00:02:05 | stefantalpalaru | https://ziglang.org/documentation/master/#Import-from-C-Header-File |
00:09:52 | leorize | we can parse C better but we still can't understand when something should be a `var` or a `ptr` or an `array` thanks to C unclear semantics |
00:10:50 | FromDiscord | <clyybber> disruptek: ping |
00:13:22 | * | rockcavera is now known as Guest29945 |
00:13:22 | * | tiorock joined #nim |
00:13:22 | * | Guest29945 quit (Killed (weber.freenode.net (Nickname regained by services))) |
00:13:22 | * | tiorock is now known as rockcavera |
00:18:27 | * | NimBot joined #nim |
00:24:09 | * | u0_a121 quit (Read error: Connection reset by peer) |
00:28:45 | * | sagax quit (Remote host closed the connection) |
00:31:29 | * | Hideki_ joined #nim |
00:32:41 | disruptek | clyybber: pong |
00:38:04 | * | krux02_ joined #nim |
00:40:27 | * | krux02 quit (Ping timeout: 240 seconds) |
00:43:01 | * | krux02_ is now known as krux02 |
00:43:56 | krux02 | deech: today I looked into graalvm, and from the examples c++ interop looked preety cool |
00:43:58 | * | u0_a121 joined #nim |
00:44:25 | disruptek | it makes you want to use nlvm, doesn't it? |
00:44:46 | krux02 | you should take a look into that. It uses c++ debug information to do the trick |
00:44:57 | krux02 | basically it means you can't run without debug information anymore |
00:45:13 | disruptek | nlvm does? |
00:45:31 | disruptek | that seems like too big a compromise. |
00:45:39 | krux02 | not really saying I want to use nlvm |
00:45:58 | krux02 | I didn't see the downsides of graalvm yet. |
00:46:04 | krux02 | maybe some horrible licensing |
00:46:25 | disruptek | i bring it up in here all the time but it's hard to get anyone interested. |
00:47:17 | krux02 | disruptek, to be honest, I am scared of nlvm |
00:47:39 | krux02 | all I see is what I would loose |
00:47:50 | krux02 | and that is the ``emit`` for C interop |
00:47:56 | krux02 | C/C++ interop |
00:48:45 | krux02 | I also see that it has potentional bugs that have been evened out in the C backend. |
00:48:59 | disruptek | that's true. |
00:49:29 | krux02 | so if you want people to use it, show some benchmarks and statistics. |
00:49:37 | krux02 | show how much faster compilation is |
00:49:49 | krux02 | show how much faster or slower execution |
00:49:50 | krux02 | is |
00:50:08 | disruptek | it will be a target of nigel at some point. i have a couple other projects to bang out first. |
00:50:20 | krux02 | nigel? |
00:50:43 | krux02 | what is nigel? |
00:50:58 | disruptek | i have a nim->llvm-ir->klee setup in docker, so that'll be a similar pipe. |
00:51:19 | disruptek | nigel is the continuous integration i'm building. |
00:53:26 | FromGitter | <Varriount> disruptek: is the name inspired by anything in particular? |
00:55:21 | FromGitter | <zetashift> nim and hairgel? |
00:58:06 | disruptek | it's an old xtc tune. |
00:58:07 | FromGitter | <Varriount> Hair gel? Like... The stuff you put in your hair? |
00:58:34 | disruptek | making plans for nigel. |
00:58:44 | disruptek | nice primus cover, too. |
00:59:56 | FromGitter | <zetashift> yes! |
01:01:12 | disruptek | i saw them do it live but i cannot find any video, unfortunately. |
01:02:38 | * | Hideki_ quit (Remote host closed the connection) |
01:02:53 | * | Hideki_ joined #nim |
01:05:37 | disruptek | sucks. |
01:12:55 | * | u0_a121 quit (Read error: Connection reset by peer) |
01:13:05 | dadada | krux02: the license is gplv2, that's solid |
01:18:56 | krux02 | ok |
01:19:14 | krux02 | but there is a community version and an eterprise version |
01:19:29 | krux02 | don't know the difference, but how is that compatible with gpl? |
01:19:52 | FromDiscord | <Elegant Beef> Now more annoying "how to nim" questions, how to pass anonymous functions and storing reference to them in an object? |
01:20:02 | FromDiscord | <Elegant Beef> anonymous procs i guess |
01:20:27 | krux02 | Elegant Beef: what? |
01:20:56 | krux02 | you want a proc member in an object? |
01:21:27 | krux02 | callback: proc(arg1: typ1, arg2: typ2) |
01:21:34 | krux02 | probably with a member like that ^ |
01:21:40 | FromDiscord | <Elegant Beef> ok |
01:21:57 | FromDiscord | <Elegant Beef> and does nim have inline anonymous procs? |
01:22:03 | krux02 | yes |
01:22:38 | krux02 | I prefer not to use them though if I don't have to. |
01:23:17 | FromDiscord | <Elegant Beef> Yea im making something that i can make system commands using my launcher in linux |
01:23:24 | FromDiscord | <Elegant Beef> so inlining or making them is fine |
01:26:58 | * | u0_a121 joined #nim |
01:26:58 | * | u0_a121 quit (Read error: Connection reset by peer) |
01:28:32 | FromDiscord | <Elegant Beef> Hmm wouldnt this `command: proc(self : Run)` be started by `referenceToObject.command()`? |
01:28:52 | * | Hideki_ quit (Remote host closed the connection) |
01:29:26 | FromGitter | <kristianmandrup> I'm working on JsGen improvements for Nim |
01:29:32 | FromGitter | <kristianmandrup> Just opened this PR - WIP - https://github.com/nim-lang/Nim/pull/13381 |
01:29:33 | disbot | β₯ Js gen improvements |
01:29:46 | * | Hideki_ joined #nim |
01:33:29 | * | u0_a121 joined #nim |
01:34:02 | * | Hideki_ quit (Ping timeout: 240 seconds) |
01:45:45 | dadada | krux02: the copyright holder has the right to license his work under as many licenses as he/she wishes |
01:47:38 | dadada | that's not in conflict with gplv2 as long as the conditions of gplv2 aren't broken, for distributions of the code/work that are distributed under gplv2 |
01:48:04 | dadada | if they make separate enterprise distributions that is under a different license, they can do so |
01:48:14 | dadada | because they hold all the copyright to the code themselves |
01:48:36 | dadada | if somebody else had part of the copyright(s) of the code/source, they wouldn't be able to do that |
01:49:05 | dadada | that's the advantage of keeping all the copyright to yourself, and making contributors sign copyrights over to your organization |
01:49:43 | dadada | the good news they can't take the gplv2 license away for all code that is already licensed and distributed by it |
01:50:07 | dadada | the only thing they could do is stop licensing future code under gplv2 |
01:51:52 | dadada | of course you can use the gplv2 distributed code for enterprise purposes |
01:52:00 | dadada | but then you'll not get support by oracle |
01:52:40 | dadada | not the commercial support |
01:53:22 | dadada | Qt has had the same license model for a long time |
01:53:51 | dadada | gpl for those that can live without commercial support |
01:54:01 | dadada | proprietary for those that need commercial support |
01:54:40 | dadada | of course you can still get commercial support for the gpl distribution |
01:54:49 | dadada | but you need to get it from a 3rd party company |
02:00:16 | * | u0_a121 quit (Read error: Connection reset by peer) |
02:03:38 | * | Hideki_ joined #nim |
02:15:09 | * | sagax joined #nim |
02:15:44 | * | Hideki_ quit (Remote host closed the connection) |
02:16:00 | * | Hideki_ joined #nim |
02:18:44 | FromGitter | <kristianmandrup> what is "truthy" in Nim? |
02:19:28 | * | ptdel joined #nim |
02:21:37 | disruptek | true |
02:22:19 | FromGitter | <kristianmandrup> hmm |
02:23:39 | * | chemist69 quit (Ping timeout: 272 seconds) |
02:24:15 | FromGitter | <kristianmandrup> How can I improve this? |
02:24:20 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e421054b612cc7bb15ca59c] |
02:24:55 | * | dadada quit (Ping timeout: 272 seconds) |
02:25:04 | FromGitter | <kristianmandrup> I guess I should instead iterate through the three markers and use find for the first that matches for `useSection`, then only call `getSection` for that one |
02:25:06 | Tanger | Maybe have useSection return a string to use in a case? |
02:25:18 | * | chemist69 joined #nim |
02:25:23 | FromGitter | <kristianmandrup> yeah, that could also work |
02:26:00 | rayman22201 | use an enum instead of a string, then you get completeness checking from the compiler. |
02:26:26 | FromGitter | <kristianmandrup> I can pass a proc to `find`, right? |
02:28:02 | FromGitter | <kristianmandrup> hmm, how to iterate and return first match efficiently in Nim? |
02:29:16 | Tanger | Wouldn't find[T, S] do the trick? Returns the index of the first match |
02:29:23 | * | u0_a121 joined #nim |
02:29:23 | * | u0_a121 quit (Write error: Connection reset by peer) |
02:29:26 | Tanger | Might just need to roll your own `==` |
02:31:43 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e42120ed4daaa26c196a16b] |
02:32:05 | FromGitter | <kristianmandrup> Feels like good'ol BASIC :P |
02:32:19 | rayman22201 | just throw a break after the `result =` |
02:33:30 | Tanger | Maybe make it an iterator? |
02:33:38 | * | paper_ quit (Ping timeout: 245 seconds) |
02:33:42 | Tanger | and yield the marker at the end |
02:34:01 | * | theelous3_ joined #nim |
02:34:01 | * | theelous3 joined #nim |
02:34:14 | * | paper_ joined #nim |
02:38:18 | rayman22201 | why? There is nothing to gain from making it an iterator. |
02:43:33 | * | Hideki_ quit (Remote host closed the connection) |
02:44:18 | * | Hideki_ joined #nim |
02:45:11 | * | u0_a121 joined #nim |
02:45:12 | * | u0_a121 quit (Read error: Connection reset by peer) |
02:48:53 | rayman22201 | I would again like to point out that enums may be better for this case: https://nim-lang.org/docs/manual.html#types-enumeration-types |
02:49:11 | rayman22201 | `find` would pretty much work how you expect out of the box |
02:49:12 | * | Hideki_ quit (Ping timeout: 265 seconds) |
02:49:34 | rayman22201 | and you would also get to use `case` statements which have exhaustiveness checking: https://nim-lang.org/docs/manual.html#statements-and-expressions-case-statement |
02:50:06 | rayman22201 | to help you prevent yourself from shooting yourself in the foot |
02:51:19 | * | Hideki_ joined #nim |
02:52:35 | * | Hideki_ quit (Remote host closed the connection) |
02:53:47 | * | Hideki_ joined #nim |
02:55:34 | * | Hideki_ quit (Remote host closed the connection) |
02:55:49 | * | Hideki_ joined #nim |
02:57:08 | * | Hideki_ quit (Remote host closed the connection) |
02:57:52 | * | rockcavera quit (Remote host closed the connection) |
02:58:23 | * | Hideki_ joined #nim |
02:58:45 | * | endragor joined #nim |
02:59:56 | * | endragor quit (Remote host closed the connection) |
03:03:03 | * | Hideki_ quit (Ping timeout: 260 seconds) |
03:09:21 | FromDiscord | <Elegant Beef> <https://github.com/beef331/nim_rofi> |
03:09:21 | FromDiscord | <Elegant Beef> Araq be merry I converted it to the camelcased functions and it hurts π |
03:09:31 | FromDiscord | <Elegant Beef> Mostly just throwing it on github for future me |
03:10:05 | * | Hideki_ joined #nim |
03:11:11 | * | Hideki_ quit (Remote host closed the connection) |
03:12:12 | * | letto_ quit (Remote host closed the connection) |
03:12:35 | * | letto_ joined #nim |
03:15:03 | * | leorize quit (Ping timeout: 240 seconds) |
03:15:23 | * | opal quit (Ping timeout: 240 seconds) |
03:21:05 | * | u0_a121 joined #nim |
03:23:49 | * | oculux quit (Ping timeout: 272 seconds) |
03:25:07 | FromGitter | <Varriount> These days I don't care too much about styling as long as it's consistent |
03:25:44 | * | Hideki_ joined #nim |
03:26:52 | FromGitter | <Varriount> I prefer lowercase underscores (or dashes, if supported) though, as it rules out the "acronym" ambiguity. |
03:27:27 | FromGitter | <Varriount> Is it IPAddress, or IpAddress? |
03:27:46 | * | Hideki_ quit (Remote host closed the connection) |
03:28:01 | * | Hideki_ joined #nim |
03:30:09 | * | muffindrake quit (Ping timeout: 272 seconds) |
03:33:15 | * | muffindrake joined #nim |
03:33:59 | FromGitter | <kaushalmodi> IpAddress .. I remember reading it somewhere.. maybe the NEP II doc |
03:34:40 | FromGitter | <kaushalmodi> *Nep1 |
03:35:35 | FromGitter | <kaushalmodi> > |
03:35:45 | FromGitter | <kaushalmodi> > In the age of HTTP, HTML, FTP, TCP, IP, UTF, WWW it is foolish to pretend these are somewhat special words requiring all uppercase. Instead treat them as what they are: Real words. So it's parseUrl rather than parseURL, checkHttpHeader instead of checkHTTPHeader etc. |
03:35:59 | FromGitter | <kaushalmodi> https://nim-lang.org/docs/nep1.html |
03:40:07 | FromDiscord | <Elegant Beef> Probably like people that prononce GUI as gooey |
03:40:12 | FromDiscord | <Elegant Beef> Inhuman is what it is π |
03:43:27 | * | u0_a121 quit (Ping timeout: 272 seconds) |
03:45:16 | * | Hideki_ quit (Remote host closed the connection) |
03:51:37 | * | opal joined #nim |
03:54:10 | * | oculux joined #nim |
04:04:53 | * | actuallybatman joined #nim |
04:05:34 | * | letto_ quit (Quit: Konversation terminated!) |
04:07:46 | * | letto joined #nim |
04:14:49 | * | letto quit (Remote host closed the connection) |
04:15:14 | * | letto joined #nim |
04:15:14 | FromDiscord | <Skaruts> How is it that when I'm printing out an object's table field, which is declared as `signals:Table[string, Callback]`, I'm getting `(data: @[], counter: 0)` instead of `{:}`? |
04:15:31 | FromDiscord | <Skaruts> (Callback is simply a `proc()`) |
04:16:41 | FromDiscord | <Skaruts> when I print a table in my simple tests I get the latter, but in my project I get the former |
04:17:53 | * | Hideki_ joined #nim |
04:18:09 | * | Ckat quit (Quit: this shouldn't be happening) |
04:18:34 | * | Ckat joined #nim |
04:21:40 | FromDiscord | <Skaruts> and when I add one entry to the table, that sequence there get filled with a bajillion things like `(hcode: 0, key: "", val: ...)` before the actual entry |
04:21:55 | FromDiscord | <Rika> are you printing repr? |
04:22:04 | FromDiscord | <Skaruts> just echo |
04:22:28 | FromDiscord | <Rika> does Callback have a $ |
04:22:35 | FromDiscord | <Skaruts> no |
04:23:12 | FromDiscord | <Skaruts> hmm, yea there's two differences between my test and my project, that's one, the other is the table in the test isn't a field of any object |
04:23:29 | FromDiscord | <Rika> Seems like repr is being called somehow |
04:24:47 | FromDiscord | <Rika> Also, a bare proc() doesn't have a $ proc |
04:26:59 | * | u0_a121 joined #nim |
04:27:38 | * | oculux quit (Ping timeout: 240 seconds) |
04:28:14 | * | Ckat quit (Quit: this shouldn't be happening) |
04:28:50 | FromDiscord | <Skaruts> hmm, that may be it. In my test I'm not even being able to echo it, it's complaining that `$` doesn't know any Callback type |
04:29:01 | FromDiscord | <Skaruts> so my project must be calling repr instead |
04:29:14 | * | Ckat joined #nim |
04:30:39 | FromDiscord | <Skaruts> is it normal though, that a table gets all that stuff in it when you add an entry? Because if it is then it makes no difference to me, since I already seen that it's otherwise working as intended |
04:30:47 | * | Hideki_ quit (Ping timeout: 260 seconds) |
04:31:01 | * | oculux joined #nim |
04:32:51 | * | lritter quit (Ping timeout: 272 seconds) |
04:32:57 | * | lritter_ joined #nim |
04:39:23 | * | nsf joined #nim |
04:40:29 | FromDiscord | <Skaruts> well, seems like it must be normal, as iterating in a for loop matches the amount of entries |
04:44:04 | * | ptdel quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
04:44:40 | * | leorize joined #nim |
04:49:19 | * | u0_a121 quit (Read error: Connection reset by peer) |
04:54:27 | * | krux02 quit (Remote host closed the connection) |
04:55:13 | * | u0_a121 joined #nim |
04:57:18 | * | u0_a121 quit (Read error: Connection reset by peer) |
04:57:36 | * | u0_a121 joined #nim |
05:01:14 | * | hax-scramper quit (Ping timeout: 240 seconds) |
05:01:31 | * | hax-scramper joined #nim |
05:01:43 | * | livcd quit (Ping timeout: 260 seconds) |
05:02:03 | * | livcd joined #nim |
05:02:29 | * | Zectbumo joined #nim |
05:05:55 | * | theelous3_ quit (Read error: Connection reset by peer) |
05:05:55 | * | theelous3 quit (Read error: Connection reset by peer) |
05:13:08 | * | u0_a121 quit (Read error: Connection reset by peer) |
05:18:51 | * | vesper quit (Ping timeout: 240 seconds) |
05:23:30 | * | vesper11 joined #nim |
05:24:42 | * | u0_a121 joined #nim |
05:26:45 | * | u0_a121 quit (Read error: Connection reset by peer) |
05:30:40 | * | u0_a121 joined #nim |
05:33:01 | * | u0_a121 quit (Read error: Connection reset by peer) |
05:35:11 | * | oculux quit (Ping timeout: 260 seconds) |
05:42:11 | * | narimiran joined #nim |
05:49:33 | * | Hideki_ joined #nim |
05:50:50 | * | dddddd quit (Ping timeout: 240 seconds) |
05:52:15 | * | hax-scramper quit (Read error: Connection reset by peer) |
05:52:26 | * | hax-scramper joined #nim |
05:57:50 | * | marmotini_ joined #nim |
06:11:49 | * | marmotini_ quit (Remote host closed the connection) |
06:12:24 | * | marmotini_ joined #nim |
06:13:26 | * | tefter quit (Quit: WeeChat 2.7) |
06:17:02 | * | marmotini_ quit (Ping timeout: 265 seconds) |
06:25:55 | * | marmotini_ joined #nim |
06:32:07 | * | tefter joined #nim |
06:44:27 | * | zyklon quit (Ping timeout: 240 seconds) |
06:46:54 | * | livcd quit (Changing host) |
06:46:54 | * | livcd joined #nim |
06:48:35 | Zevv | hey disruptek, you want to know a funny coincedence |
06:51:03 | Zevv | the albums "Crush" by "Floating Points" is #1 on my 2019 new cool music list. And here you are, getting crushed by floating points! |
06:51:08 | Zevv | How cool is that |
06:56:46 | * | Hideki_ quit (Remote host closed the connection) |
06:58:19 | * | Hideki_ joined #nim |
06:58:58 | FromGitter | <gogolxdong> Error: invocation of external compiler program failed. Cannot allocate memory 12 compiled with --gc:arc on centos7 |
07:00:18 | FromGitter | <gogolxdong> It's fine with WSL ubuntu 18.04, as far as I tried. |
07:01:07 | * | oculux joined #nim |
07:01:18 | * | zyklon joined #nim |
07:02:57 | * | Hideki_ quit (Ping timeout: 272 seconds) |
07:07:08 | FromGitter | <gogolxdong> ah, out of memory , 2GB in total, compiled on 4GB is fine. |
07:08:01 | FromGitter | <gogolxdong> Does --gc:regions still work as before or move to --gc:arc now? |
07:10:33 | * | lritter_ quit (Quit: Leaving) |
07:11:12 | * | Hideki_ joined #nim |
07:27:36 | * | Hideki_ quit (Remote host closed the connection) |
07:38:51 | * | SunDwarf quit (Ping timeout: 260 seconds) |
07:40:22 | Zevv | regions is still there, and arc is not yet bug free |
07:42:42 | * | SunDwarf joined #nim |
07:51:59 | * | Vladar joined #nim |
07:52:15 | * | solitudesf joined #nim |
07:56:07 | FromGitter | <gogolxdong> ok, thanks. |
07:57:19 | livcd | gogolxdong are you okay? |
07:57:23 | livcd | You are in Shenzhen right? |
07:59:39 | FromGitter | <gogolxdong> yes, I'm ok, will return to work next week :) |
08:00:00 | * | gmpreussner quit (Quit: kthxbye) |
08:03:11 | * | marmotini_ quit (Remote host closed the connection) |
08:05:06 | * | gmpreussner joined #nim |
08:05:08 | * | ng0_ joined #nim |
08:06:16 | * | fanta1 joined #nim |
08:08:24 | * | ng0 quit (Ping timeout: 268 seconds) |
08:13:25 | * | Hideki_ joined #nim |
08:14:00 | * | oculux quit (Ping timeout: 265 seconds) |
08:15:28 | * | marmotini_ joined #nim |
08:16:05 | * | dadada joined #nim |
08:16:28 | * | dadada is now known as Guest1936 |
08:20:11 | * | Ven`` joined #nim |
08:26:33 | * | Hideki_ quit (Ping timeout: 272 seconds) |
08:27:08 | * | Guest1936 is now known as dadada |
08:37:04 | livcd | good luck! |
08:54:55 | FromGitter | <Varriount> @kaushalmodi That's all well and good, but I don't use Nim at work |
08:57:45 | * | marmotini_ quit (Remote host closed the connection) |
09:01:33 | * | Hideki_ joined #nim |
09:03:06 | dadada | do you know of any standard for describing APIs across languages/platforms? |
09:03:18 | dadada | to me it looks like there's none |
09:03:37 | vegai | vice versa, there are too many |
09:03:49 | vegai | or perhaps I didn't understand your question |
09:03:52 | * | marmotini_ joined #nim |
09:03:52 | vegai | but let's say, GRPC? |
09:05:05 | dadada | I mean there are different multiple different tools for creating API/documentation for each language (C++, Java, Nim, etc.) |
09:05:34 | dadada | and almost every project that has an API represents its API differently to the user browsing documentation |
09:05:56 | dadada | do you know the program zeal?= |
09:06:14 | dadada | it has so called docsets for a multitude of languages/APIs |
09:06:55 | dadada | but even in zeal there's no unified look/database/standard for all the represented APIs |
09:07:29 | * | floppydh joined #nim |
09:07:53 | dadada | if there was a unified data representation for components of APIs that you could generate for all languages/libraries/projects |
09:08:03 | dadada | you could all put them into one unified API browser |
09:08:12 | dadada | with one unified layout |
09:11:38 | * | Pqzcih5 joined #nim |
09:11:59 | dadada | there's a docset for nim that you can use in zeal bw |
09:12:00 | dadada | btw |
09:12:10 | * | fanta1 quit (Quit: fanta1) |
09:25:02 | FromGitter | <kdheepak> I've requested support for nimlsp in neovim's built in LSP implementation. You can see the issue here: https://github.com/neovim/nvim-lsp/pull/122 |
09:25:03 | disbot | β₯ Add nimls |
09:42:45 | * | solitudesf quit (Ping timeout: 246 seconds) |
09:44:13 | * | marmotini_ quit (Remote host closed the connection) |
09:44:49 | * | marmotini_ joined #nim |
09:49:42 | * | marmotini_ quit (Ping timeout: 265 seconds) |
09:49:59 | FromDiscord | <clyybber> kdheepak: Nice, theres also https://github.com/alaviss/nim.nvim/ |
09:50:01 | * | solitudesf joined #nim |
10:02:05 | FromDiscord | <clyybber> krux02: Why cant isUnion be implemented as a macro? |
10:03:49 | FromDiscord | <clyybber> Like getTypeImpl and then check for the union pragma |
10:03:59 | * | Hideki_ quit (Ping timeout: 260 seconds) |
10:11:29 | FromDiscord | <exelotl> Would be nice if there was something like distinct but it doesn't lose all existing fields and procedures, just means that any new ones for this type can't be used for other aliases of the same type |
10:13:20 | FromDiscord | <clyybber> @exelotl You can do that |
10:13:27 | FromDiscord | <clyybber> Just define your distinct |
10:13:33 | FromDiscord | <clyybber> and write a {.borrow.} |
10:15:46 | * | fanta1 joined #nim |
10:15:52 | FromDiscord | <exelotl> :o |
10:18:15 | FromGitter | <Varriount> dadada: Swagger |
10:18:31 | FromDiscord | <exelotl> Oh right, but then I need to explicitly borrow every operation I want to preserve |
10:19:53 | FromGitter | <Varriount> exelotl: Could you use an object with one field plus a converter? |
10:21:24 | FromDiscord | <exelotl> Not really cause the variable comes from C, I need to import it as an integer-compatible type |
10:23:03 | FromDiscord | <exelotl> (it's an io register and I want to define custom getters/setters for it but also still be able to use the whole bitops library with it) |
10:25:56 | FromDiscord | <Rika> @exelotl you can just do `type SomeType = distinct int {.borrow.}` and it does all procs int has |
10:26:45 | FromDiscord | <Rika> wrong order |
10:26:46 | FromDiscord | <Rika> lol |
10:27:05 | FromDiscord | <Rika> pragma order is an issue with me for some reason |
10:27:20 | FromDiscord | <Rika> i think its `type ST {.borrow.} = distinct int` |
10:28:15 | FromDiscord | <exelotl> The manual doesn't mention this :( |
10:28:58 | * | fanta1 quit (Quit: fanta1) |
10:29:10 | FromDiscord | <exelotl> It just says you can attach borrow to the type to inherit the `.` operator |
10:29:30 | FromDiscord | <Rika> i dont remember where i saw it, i think nim in action mentioned it |
10:29:49 | FromDiscord | <Rika> better test it on playground too, i might be wrong |
10:31:15 | FromDiscord | <exelotl> I'll give it a try when I can, on my phone rn |
10:31:26 | FromDiscord | <Rika> ill test it for you then |
10:32:21 | FromDiscord | <Rika> doesnt work |
10:32:28 | FromDiscord | <Rika> i dont remember where i saw this then... |
10:32:35 | FromDiscord | <Rika> not the nim by example one |
10:35:05 | FromGitter | <gogolxdong> Does anyone know what happened `upstream prematurely closed connection while reading response header from upstream` from nginx log? |
10:35:19 | FromGitter | <gogolxdong> with asynchttpserver |
10:36:48 | FromDiscord | <Rika> @exelotl seems like you need to borrow all procs, maybe someone can write a macro to make something which does that |
10:38:03 | FromDiscord | <exelotl> rip :'( |
10:38:20 | * | krux02 joined #nim |
10:38:40 | FromDiscord | <exelotl> Attaching borrow to the type does feel like it *should* be a thing though |
10:41:42 | FromDiscord | <clyybber> oh, I thought it would borrow everything |
10:42:58 | FromDiscord | <exelotl> I'll make a feature request for it |
10:44:20 | FromDiscord | <clyybber> @exelotl There was https://github.com/nim-lang/Nim/pull/3494 |
10:44:21 | disbot | β₯ Borrow all: type some {.borrow.} = distinct other |
10:49:44 | Araq | yeah and all it had to do was to butcher overload resolution |
10:49:50 | Araq | great stuff :P |
10:56:04 | FromGitter | <gogolxdong> asynchttpserver used to work but got empty body now. |
10:58:41 | Araq | gogolxdong: it's a regression, fix is in the works |
11:00:23 | FromGitter | <gogolxdong> ah ,ok will released 1.0.4 work? |
11:00:34 | FromGitter | <gogolxdong> I'm on devel |
11:00:53 | FromGitter | <kristianmandrup> @timotheecour Thanks for your comments. Not sure how to add such an extra option and then add it to a config option that is accessible from on `PProc` that is passed around |
11:01:51 | Araq | 1.0.x is fine |
11:08:25 | FromGitter | <gogolxdong> checked out to 1.0.6 , get `Error: system module needs: nimBorrowCurrentException` |
11:10:15 | Araq | you need to use build.sh |
11:11:09 | FromGitter | <gogolxdong> ci/build.sh ? |
11:14:33 | lqdev[m] | no, just build.sh |
11:14:50 | lqdev[m] | in the root dir |
11:15:56 | lqdev[m] | oh wait, it's called build_all.sh |
11:16:10 | FromGitter | <gogolxdong> I'm using build_all.sh |
11:17:10 | Araq | https://nim-lang.org/download/nim-1.0.6.tar.xz |
11:17:18 | Araq | For the source distribution, open a new terminal window, cd into the extracted directory, and execute the following commands: |
11:17:18 | Araq | sh build.sh |
11:17:18 | Araq | bin/nim c koch |
11:17:19 | Araq | ./koch tools |
11:19:04 | * | abm joined #nim |
11:20:27 | Araq | https://doc.rust-lang.org/nomicon/exception-safety.html lol, now that worked out well |
11:20:38 | FromGitter | <gogolxdong> I'm using csource/build.sh then build_all.sh |
11:20:52 | Araq | so Rust doesn't have exceptions yet it has all the same complexities |
11:22:44 | Araq | gogolxdong: follow my instructions please |
11:22:49 | Araq | and don't do anything else |
11:23:25 | Araq | you can also follow a different path but then don't complain it doesn't work |
11:23:29 | Araq | ;-) |
11:29:26 | * | solitudesf quit (Ping timeout: 268 seconds) |
11:48:50 | * | nsf quit (Quit: WeeChat 2.7) |
12:10:19 | * | marmotini_ joined #nim |
12:10:23 | * | marmotini_ quit (Remote host closed the connection) |
12:11:03 | * | marmotini_ joined #nim |
12:12:50 | * | marmotini_ quit (Remote host closed the connection) |
12:12:56 | * | oculux joined #nim |
12:13:24 | * | marmotini_ joined #nim |
12:13:30 | * | marmotini_ quit (Remote host closed the connection) |
12:13:44 | * | marmotini_ joined #nim |
12:20:51 | FromGitter | <alehander92> disruptek i really liked this song |
12:21:24 | FromGitter | <alehander92> Araq but they are used "exceptionally" :P |
12:25:10 | * | fanta1 joined #nim |
12:37:09 | * | Zectbumo quit (Remote host closed the connection) |
12:45:52 | * | rockcavera joined #nim |
12:49:24 | * | opal quit (Remote host closed the connection) |
12:49:38 | * | opal joined #nim |
12:54:07 | * | tarragon joined #nim |
12:54:41 | tarragon | hello how I can iterate through all the keys/values of a json object? |
12:56:10 | * | solitudesf joined #nim |
12:57:17 | Zevv | for k, v in o: |
13:01:15 | * | Pqzcih5 quit (Remote host closed the connection) |
13:05:04 | * | Hideki_ joined #nim |
13:07:46 | tarragon | I dont really see it : https://play.nim-lang.org/#ix=2boP |
13:09:43 | Zevv | your top level json nod is not an object but an array |
13:10:13 | Zevv | you can iterate that but with only one variable in your for loop. |
13:10:18 | Zevv | The error message is not helpful, I admit |
13:10:29 | Zevv | what happens if you do a for is that Nim implicitly invokes an iterator on your subject |
13:10:39 | Zevv | for 1 variable its 'items', for 2 variables its 'pairs' |
13:11:10 | tarragon | I need go through all the values (dont know the structure of the json) then work with that value |
13:11:12 | tarragon | how do i do this? |
13:11:20 | * | Hideki_ quit (Remote host closed the connection) |
13:12:02 | Zevv | you need to check the kind, and then iterate properly. Let me dump an example |
13:14:51 | tarragon | thanks i am a bit lost about this |
13:15:01 | Zevv | https://play.nim-lang.org/#ix=2boW |
13:15:06 | Zevv | np |
13:15:15 | * | nsf joined #nim |
13:15:53 | tarragon | that looks complex how do I learn how you did it ? |
13:17:50 | FromDiscord | <Rika> basically JsonNodes have a `kind` field |
13:18:11 | FromDiscord | <Rika> which is an enum of some sort; has something like JInt and JString and JArray and JObject or so |
13:18:34 | FromDiscord | <Rika> you handle JObject in the 1st case, JArray in the 2nd case |
13:19:00 | FromDiscord | <Rika> if it's an object (has keys and values), then use the pairs iterator |
13:19:18 | FromDiscord | <Rika> if it's an array (only values), then use the items iterator |
13:20:07 | tarragon | What is that $n ? |
13:20:10 | tarragon | echo $n |
13:20:28 | FromDiscord | <Rika> stringify |
13:20:35 | FromDiscord | <Rika> make n into a string |
13:20:41 | FromDiscord | <Rika> then print (echo) |
13:20:55 | FromDiscord | <Rika> well, since you dont know that, maybe look into the nim manua |
13:21:03 | FromDiscord | <Rika> l |
13:21:21 | Zevv | https://github.com/nim-lang/Nim/pull/13389 |
13:21:22 | disbot | β₯ Improved assertion error messages on usage of JsonNode iterators on wrong kinds. |
13:21:50 | tarragon | I get the same result if I omit the $ symbol |
13:21:55 | FromDiscord | <Rika> nice, we should strive for error messages better than rustc's |
13:22:18 | FromDiscord | <Rika> tarragon, because echo implicitly calls that $ proc for every argument |
13:22:47 | tarragon | so I dont need it or do I need it ? |
13:23:06 | FromDiscord | <Rika> you dont, but it's allowed if you explicitly want it |
13:24:22 | tarragon | Thanks! |
13:24:27 | tarragon | sorry i am still experimenting |
13:24:32 | FromDiscord | <Rika> it's fine |
13:24:40 | FromDiscord | <Rika> still recommend reading some sort of tutorial though |
13:24:41 | * | Ven`` quit (Quit: Textual IRC Client: www.textualapp.com) |
13:25:10 | FromDiscord | <Rika> the nim manual, nim by example, scripter's notes, nim in action, rosetta code (not really a tutorial), whichever works for you |
13:26:24 | tarragon | I read it but there's a lot of things that I forgot or cant remember while doing it |
13:27:05 | tarragon | I want to do something like if $n.startsWith(re"http:"): but I am getting type mismatch as it's JsonNode |
13:27:41 | FromDiscord | <Rika> do ($n).startsWith.... |
13:28:55 | tarragon | hmm thanks |
13:29:00 | tarragon | one more confusing thing :/ |
13:30:04 | FromDiscord | <Rika> not really, $ binds strongly (i think this is the right terminology) |
13:30:33 | FromDiscord | <Rika> which means $x.y.z(a, b, c) partially resolves to $(x.y.z(a, b, c)) |
13:31:10 | lqdev[m] | it's a matter of precedence, prefix $ binds strong**er** than infix . and ( |
13:33:20 | FromDiscord | <Rika> afaik only $ binds stronger than usual, am i correct? |
13:33:34 | FromDiscord | <Rika> you can also just do n.`$`.startsWith... |
13:51:05 | * | abm quit (Quit: Leaving) |
14:01:10 | tarragon | Thanks a lot everyone! |
14:07:44 | * | Hideki_ joined #nim |
14:12:21 | * | Hideki_ quit (Ping timeout: 272 seconds) |
14:13:25 | * | Hideki_ joined #nim |
14:16:33 | * | dadada quit (Ping timeout: 268 seconds) |
14:20:30 | lqdev[m] | @Rika, no, all operators except `@` bind stronger than infix |
14:20:48 | lqdev[m] | I mean |
14:21:00 | lqdev[m] | primarySuffix |
14:21:16 | lqdev[m] | here: https://nim-lang.org/docs/manual.html#syntax-precedence |
14:21:25 | FromDiscord | <Rika> i see |
14:21:27 | * | Hideki_ quit (Remote host closed the connection) |
14:25:33 | * | Hideki_ joined #nim |
14:26:26 | * | hax-scramper quit (Ping timeout: 240 seconds) |
14:26:41 | FromDiscord | <Rika> i'd like to see more input on this since ar_q and i have differing opinions https://github.com/nim-lang/Nim/pull/13371 |
14:26:41 | disbot | β₯ allow conversion of ints to enums in json |
14:27:01 | * | hax-scramper joined #nim |
14:27:13 | lqdev[m] | how do you send/receive data from a unix socket using the `net` module? I have `socket.connectUnix("file"); socket.send(text); echo socket.recvLine()`, but both the server *and* the client don't seem to receive any data |
14:27:51 | lqdev[m] | both sockets were created using `newSocket(AF_UNIX, SOCK_STREAM, IPPROTO_ICMP)` |
14:28:15 | * | tarragon quit (Remote host closed the connection) |
14:29:18 | * | Hideki_ quit (Remote host closed the connection) |
14:29:32 | * | Hideki_ joined #nim |
14:29:34 | * | Hideki_ quit (Remote host closed the connection) |
14:30:07 | * | Hideki_ joined #nim |
14:33:39 | lqdev[m] | disruptek_'s swayipc uses IPPROTO_IP, hmm |
14:34:06 | lqdev[m] | but that doesn't seem to change anything |
14:35:03 | * | Hideki_ quit (Ping timeout: 268 seconds) |
14:40:45 | * | nsf quit (Quit: WeeChat 2.7) |
14:45:17 | * | dddddd joined #nim |
14:54:52 | * | leorize[m] joined #nim |
14:54:52 | leorize[m] | icmp? |
14:56:39 | leorize[m] | hmm that parameter is actually ignored |
15:05:13 | * | Hideki_ joined #nim |
15:10:19 | * | dadada joined #nim |
15:10:42 | * | dadada is now known as Guest90713 |
15:11:29 | * | Guest90713 is now known as dadada |
15:16:13 | FromGitter | <iffy> I'm trying to put some `await`s in a template to be used with `{.async.}` procs, but I'm getting `Error: Await only available within .async` Any way around this? |
15:21:03 | disruptek | hearts and minds! |
15:21:47 | disruptek | lqdev: my thing works, just copy it. |
15:22:15 | disruptek | rika: what does that enum<->json code do with strings? enum string values? |
15:24:07 | disruptek | Zevv: har har |
15:24:17 | * | natrys joined #nim |
15:25:46 | dadada | I'm sure you guys are aware of https://github.com/Nuitka/Nuitka , which compiles python code to C, it's not a transplicer, it's compiler that targets C similarly to nim |
15:26:31 | FromDiscord | <Rika> disruptek: what do you mean? |
15:26:51 | FromDiscord | <Rika> it only does it one way, int or string -> enum, not vice versa |
15:26:55 | * | Hideki_ quit (Ping timeout: 260 seconds) |
15:26:58 | FromDiscord | <Rika> iffy, got some code? |
15:28:03 | nisstyre | dadada: seems neat |
15:28:37 | dadada | it's far from optimized, given that most python code doesn't use annotated types, I wonder how far optimization will come with this project eventually, currently it's producing giant binary blobs, it's definitely not suitable for embedded systems like nim is |
15:28:51 | FromDiscord | <Rika> neat |
15:29:03 | nisstyre | dadada: PyPy uses something called RPython maybe they can leverage that |
15:29:12 | dadada | if you're interested you can follow the blog/website https://nuitka.net/ |
15:29:19 | nisstyre | it's basically a subset of Python that can be more easily statically analyzed and compiled |
15:30:05 | dadada | nisstyre: I think they don't need that, they have a different strategy, they implemented the compiler in python, and it support all of python 3.8 |
15:30:16 | dadada | supports |
15:30:49 | dadada | where Kay Hayen is they who has stemmed 99% of this project alone |
15:30:52 | FromDiscord | <Rika> it supports reflection?? |
15:31:20 | nisstyre | it's a massive task to work on alone |
15:31:23 | nisstyre | he must be retired |
15:31:41 | dadada | no, he is a coding veteran, there's speech on youtube, impressive guy |
15:31:45 | dadada | a speech |
15:31:54 | dadada | older guy |
15:33:13 | dadada | s/stemmed/built |
15:33:50 | FromGitter | <iffy> Rika: http://ix.io/2bpF |
15:35:45 | dadada | Rika: yes it should support reflection, it's intentionally designed to support everything that CPython does |
15:35:55 | dadada | if not, it's considered a bug |
15:36:50 | * | natrys quit (Quit: natrys) |
15:37:21 | * | natrys joined #nim |
15:38:56 | FromDiscord | <Rika> thats cool as heck |
15:39:06 | dadada | I agree on that |
15:39:20 | FromDiscord | <Rika> iffy: templates cannot contain await |
15:39:36 | FromDiscord | <Rika> make it an async inline proc |
15:48:25 | FromGitter | <iffy> okay |
16:05:04 | FromGitter | <alehander92> yess @iffy i have a |
16:05:06 | FromGitter | <alehander92> PR |
16:05:11 | FromGitter | <alehander92> for await in templates/macros |
16:05:14 | FromGitter | <alehander92> but its not fully finished |
16:06:04 | FromGitter | <alehander92> https://github.com/nim-lang/Nim/pull/12085 |
16:06:06 | disbot | β₯ Make await a template |
16:06:13 | FromGitter | <alehander92> i use a version of it in my local projects |
16:06:27 | FromGitter | <alehander92> but i think i did have some strange type errors initially |
16:06:44 | FromGitter | <alehander92> its mostly based on yglukhov's similar code from chronos iirc |
16:07:37 | FromGitter | <alehander92> dadada i asked him on email (the nuitka guy) and i had an email from him, a huge email with great detail |
16:07:44 | FromGitter | <alehander92> asked him something* |
16:07:58 | FromGitter | <alehander92> so it seems as a very welcoming project |
16:18:23 | * | dadada quit (Ping timeout: 272 seconds) |
16:44:01 | * | nsf joined #nim |
16:44:44 | FromDiscord | <Rika> isnt await a template |
16:45:21 | Yardanico | it's about using "await" itself in a template/macro (in result) |
16:46:15 | FromDiscord | <Rika> yeah the name is misleading |
16:46:39 | * | floppydh quit (Quit: WeeChat 2.7) |
16:46:41 | Yardanico | well it's not, the PR makes "await" a template :P |
16:47:06 | FromGitter | <bajro17> https://github.com/the-benchmarker/web-frameworks |
16:47:12 | FromGitter | <bajro17> I look at this repo |
16:47:22 | FromGitter | <bajro17> and I think you people make beast :D |
16:47:26 | FromGitter | <bajro17> congrats |
16:47:47 | FromDiscord | <Rika> yardanico, then you're misleading |
16:48:04 | Yardanico | i'm not :P it's for about making "await" available in templates as well |
16:48:13 | FromDiscord | <clyybber> disruptek: whats cracking? |
16:49:55 | * | fanta1 quit (Quit: fanta1) |
16:50:39 | FromDiscord | <Rika> no you are, you didnt answer my question directly implying that i was right no? |
16:50:43 | * | hax-scramper quit (Ping timeout: 268 seconds) |
16:51:34 | * | hax-scramper joined #nim |
17:10:13 | disruptek | nothing new here, but so little is written on this dumpster fire: https://wiki.alopex.li/LetsBeRealAboutDependencies |
17:10:32 | * | NimBot joined #nim |
17:15:02 | * | ptdel joined #nim |
17:16:15 | * | ptdel quit (Remote host closed the connection) |
17:17:47 | * | ptdel joined #nim |
17:27:43 | * | opal quit (Ping timeout: 240 seconds) |
17:30:48 | * | opal joined #nim |
17:35:29 | FromDiscord | <clyybber> didn't work on it anymore |
17:35:47 | FromDiscord | <clyybber> translation of the tricky parts is missing |
17:35:50 | FromDiscord | <clyybber> like casts |
17:35:56 | FromDiscord | <clyybber> and shifts |
17:36:14 | FromDiscord | <clyybber> I think I'm gonna git init here, so that we can revert if we fuck up |
17:36:54 | disruptek | what do you mean by "here"? |
17:37:02 | FromDiscord | <clyybber> now |
17:37:16 | FromDiscord | <clyybber> space and time, always get that mixed up |
17:37:32 | disruptek | yes, but it doesn't help. |
17:37:40 | disruptek | are you talking about my repo or yours? |
17:37:46 | FromDiscord | <clyybber> mine |
17:38:30 | disruptek | bazel cannot seem to build ryu tests for me; benchmarks are fine. |
17:38:40 | FromDiscord | <clyybber> hmm |
17:38:44 | FromDiscord | <clyybber> I managed without bazel |
17:38:47 | FromDiscord | <clyybber> cd into ryu |
17:38:50 | FromDiscord | <clyybber> and then make test |
17:39:09 | disruptek | i guess, sure. |
17:41:09 | disruptek | so i guess 2^-23 is actually correct. |
17:43:31 | disruptek | we have an off-by-2 error in there somewhere. |
17:45:41 | FromDiscord | <clyybber> Hmm |
17:45:59 | FromDiscord | <clyybber> should we really translate C casts to conversions? |
17:46:05 | FromGitter | <patrkris> Hi everyone! Is there a way to force `nimble` to use color output? |
17:46:12 | FromDiscord | <clyybber> maybe the error is hidden somewhere there? |
17:49:26 | disruptek | it's k and j. |
17:50:25 | disruptek | i think i added this debug, but anyway, like ~240 in my branch. |
17:51:09 | disruptek | we dump q/i/k/j. k and j are +2 and shouldn't be. |
17:52:08 | FromDiscord | <clyybber> what happens if you just -2 them? |
17:56:21 | disruptek | fixed it in pow5bits. |
17:56:56 | FromDiscord | <clyybber> does it work? |
17:57:18 | disruptek | closer. π |
17:58:22 | disruptek | ptal |
17:58:30 | FromDiscord | <clyybber> aight |
17:59:24 | FromDiscord | <clyybber> whooooo |
17:59:30 | FromDiscord | <clyybber> its almost completely working |
17:59:32 | FromDiscord | <clyybber> NICE! |
18:01:30 | * | dadada joined #nim |
18:01:38 | disruptek | oh, it's just length. |
18:01:43 | disruptek | we really need to solve that properly. |
18:01:53 | * | dadada is now known as Guest14481 |
18:02:21 | * | Guest14481 is now known as dadaa |
18:02:23 | * | dadaa is now known as dadada |
18:03:10 | disruptek | so everything works if i give it enough space. how to determine how much it needs in advance? |
18:03:29 | FromDiscord | <clyybber> impossible I think |
18:03:36 | FromDiscord | <clyybber> just give it 16 |
18:03:41 | FromDiscord | <clyybber> and then cut later |
18:04:53 | disruptek | we start at the back, so we can just grow it whenever we need to; one and done, right? |
18:06:06 | disruptek | the sign, the period, the exponent, the `E`... what else could we possibly need? |
18:10:22 | FromDiscord | <clyybber> eh |
18:10:30 | FromDiscord | <clyybber> C operator precedence really sucks |
18:10:39 | disruptek | i don't want to have to strip the result, ya feel me? |
18:12:02 | FromDiscord | <clyybber> I feel ya |
18:12:12 | FromDiscord | <clyybber> but I don't think we can not do it |
18:14:06 | disruptek | maybe we build a cstring; then we don't have to strip it per se -- we just copy it. a little faster. |
18:15:55 | FromDiscord | <clyybber> hmm |
18:15:58 | FromDiscord | <clyybber> could be |
18:16:14 | disruptek | i think that's the most elegant solution so far. |
18:17:54 | Zevv | oi you guys got it working, sweet! |
18:18:37 | disruptek | clyybber made me consult the c and that made it trivial. |
18:18:59 | disruptek | what's the "right" way to alloc a cstring of specific len? |
18:19:15 | disruptek | i am just using alloc0 (it needs to be comprised of nulls) but... |
18:20:04 | * | natrys quit (Quit: natrys) |
18:23:18 | FromDiscord | <clyybber> it shouldn't be needed |
18:23:29 | FromDiscord | <clyybber> alloc() no zero should do |
18:23:34 | FromDiscord | <clyybber> malloc doesn't initialize either |
18:23:37 | FromDiscord | <clyybber> or is not required to |
18:23:49 | disruptek | but i need to initialize it to zero. |
18:23:58 | disruptek | well, i guess i can terminate it manually. |
18:23:59 | FromDiscord | <clyybber> why? |
18:24:04 | FromDiscord | <clyybber> ah |
18:24:17 | FromDiscord | <clyybber> the c version also terminates manually |
18:26:07 | * | Trustable joined #nim |
18:29:30 | * | Trustable quit (Remote host closed the connection) |
18:29:35 | krux02 | in c you do calloc |
18:30:31 | disruptek | i was really asking if there was a smarter way to alloc a cstring but i honestly don't know how much smarter such a simple operation could be. |
18:30:41 | disruptek | something more idiomatic for the type. |
18:31:44 | disruptek | cstr = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" π |
18:31:58 | krux02 | can you please vote on https://github.com/nim-lang/RFCs/issues/185 so that I can close it legit |
18:32:00 | disbot | β₯ deprecate macros.expectLen, expectKind, expectMinLen in favor of something generic or doAssert ; snippet at 12https://play.nim-lang.org/#ix=2bqJ |
18:32:39 | krux02 | disrupteck a cstring really is just byets |
18:32:52 | disruptek | yeah. |
18:32:57 | krux02 | it is for c intorop therefore it has c types |
18:33:29 | disruptek | right. we need those semantics here. |
18:33:30 | krux02 | malloc and friends give you void* |
18:33:42 | disruptek | i don't need it on the heap, though. just gonna use the above. |
18:34:04 | krux02 | well, there is a alloca I think that allocates on the stack in C |
18:34:06 | krux02 | I have to go |
18:34:11 | krux02 | bye |
18:34:16 | disruptek | peace |
18:34:23 | * | krux02 quit (Remote host closed the connection) |
18:40:36 | FromDiscord | <clyybber> no we need it on the heap |
18:40:48 | FromDiscord | <clyybber> or maybe we don't but its unneccessary to have it not on the heap |
18:40:54 | FromDiscord | <clyybber> it doesn't matter probably |
18:41:03 | FromDiscord | <clyybber> since we copy it to a string in the end anyways |
18:41:22 | FromDiscord | <clyybber> the C version has it on the heap FWIW |
18:41:28 | Zevv | clyybber: take the allocation out what you are doing, expect the caller to provide allocation |
18:41:33 | Zevv | then you can make versions that do effective things |
18:42:01 | disruptek | i really don't want it on the heap. that just seems stupid. |
18:42:08 | Zevv | often I want to add to an existing buffer. We can make addSomething that makes sure the underlying buffer is large enough |
18:42:08 | disruptek | but anyway, this doesn't work. |
18:42:38 | Zevv | can't you just take a var openarray[char] |
18:43:56 | * | Trustable joined #nim |
18:44:42 | Zevv | or I can shut up - also a good idea probably |
18:45:41 | shashlick | @narimiran - nightlies is broken last whole week |
18:46:33 | narimiran | shashlick: huh, strange i didn't get any email. but it is probably because travis decided again to not recognize me as a part of nim team.... |
18:47:29 | narimiran | and travis is red on devel for quite some time too. (only travis) |
18:47:35 | shashlick | looks like linenoise.h is missing |
18:50:55 | FromDiscord | <clyybber> ugh |
18:51:02 | FromDiscord | <clyybber> I tolt timothee that this is a hack |
18:51:17 | narimiran | "nim secret: support linenoise when available" |
18:51:30 | narimiran | commit 574f61315d015033dbf20e4840a645057b0c2060 |
18:51:54 | FromDiscord | <ELECTR0ZED> sup peeps |
18:51:57 | shashlick | how did it get through the standard CI |
18:51:58 | * | Hideki_ joined #nim |
18:52:07 | FromDiscord | <clyybber> linenoise is available there probably |
18:52:08 | FromDiscord | <Recruit_main_70007> @ELECTR0ZED welcome |
18:52:10 | disruptek | Zevv: technically, you're right, but pragmatic impl details complicate things. |
18:52:11 | FromDiscord | <clyybber> sup |
18:52:37 | FromGitter | <deech> https://github.com/nim-lang/Nim/issues/13390 |
18:52:39 | disbot | β₯ Exporting generic methods to C causes name clashes ; snippet at 12https://play.nim-lang.org/#ix=2bqU |
18:52:58 | FromDiscord | <ELECTR0ZED> why all this spam in general |
18:53:26 | Zevv | that's what my wife always says: "*technically* you are right" |
18:53:38 | FromDiscord | <clyybber> @ELECTR0ZED it is not spam?? |
18:53:38 | shashlick | why cannot firefox load github, works fine on IE |
18:53:55 | FromDiscord | <clyybber> works for me |
18:54:07 | FromDiscord | <ELECTR0ZED> is the messages 2 way tho? do they see what we send |
18:54:13 | FromDiscord | <clyybber> yeah |
18:54:15 | narimiran | shashlick: red travis on devel seems to be something else, my ctrl+F 'linenoise' doesn't bring anything there |
18:54:20 | disruptek | what does ireland have to do with it? |
18:54:27 | FromDiscord | <ELECTR0ZED> oh so they just ignoring us lol |
18:54:58 | FromDiscord | <clyybber> narimiran: So it isn't linenoise? |
18:55:02 | FromDiscord | <clyybber> Is it the PR tho? |
18:55:17 | narimiran | @clyybber on nightlies it is, on devel (nim repo) it isn't |
18:55:38 | FromDiscord | <clyybber> nightlies is not devel?? |
18:55:49 | shashlick | do you need linenoise installed? |
18:55:52 | FromDiscord | <clyybber> or do you mean it only fails on the nightlies build bot? |
18:55:55 | narimiran | nightlies have their own repo |
18:56:08 | narimiran | (sorry for the confusion) |
18:56:31 | FromDiscord | <clyybber> nah, I know that they have their own repo |
18:56:37 | FromDiscord | <clyybber> but they build from devel no? |
18:56:47 | shashlick | yes |
18:56:50 | * | Hideki_ quit (Ping timeout: 265 seconds) |
18:56:51 | narimiran | e.g. nightlies fail: https://travis-ci.org/nim-lang/nightlies/jobs/648291211 vs devel fail: https://travis-ci.org/nim-lang/Nim/jobs/648850106 |
18:57:05 | shashlick | what was added to travis for devel CI to run |
18:57:14 | FromDiscord | <clyybber> shashlick: Can you try doing import rdstdin? |
18:57:17 | FromDiscord | <clyybber> it should fail |
18:57:29 | narimiran | shashlick: this was the PR: https://github.com/nim-lang/Nim/pull/13328 |
18:57:32 | disbot | β₯ nim secret: support linenoise when available ; snippet at 12https://play.nim-lang.org/#ix=2bqY |
19:01:02 | * | Vladar quit (Quit: Leaving) |
19:01:37 | shashlick | this is failing in build.sh - https://travis-ci.org/nim-lang/nightlies/jobs/648291211#L20720 |
19:05:38 | shashlick | csources build itself is failing because linenoise.h isn't getting packaged into the xz file created |
19:09:25 | * | letto quit (Quit: Konversation terminated!) |
19:11:33 | * | letto joined #nim |
19:37:48 | * | xet7 quit (Remote host closed the connection) |
19:38:54 | * | xet7 joined #nim |
19:51:11 | disruptek | i do not understand cstring. |
19:51:46 | * | marmotini_ quit (Remote host closed the connection) |
19:52:07 | Araq | it's char* |
19:52:19 | * | marmotini_ joined #nim |
19:52:21 | disruptek | lol |
19:52:31 | disruptek | i know, but i cannot set indicies reliably. |
19:52:59 | Araq | it needs to backed up by a buffer |
19:53:15 | disruptek | https://play.nim-lang.org/#ix=2brb |
19:53:15 | * | dadada quit (Ping timeout: 240 seconds) |
19:53:28 | leorize[m] | that's weird, what kind of problem are you having? |
19:54:01 | Araq | disruptek, all invalid code |
19:54:11 | disruptek | a works. |
19:54:39 | disruptek | it can never hold a static value? |
19:55:11 | disruptek | or point to a value on the static? |
19:55:15 | disruptek | stack, rather? |
19:56:27 | * | marmotini_ quit (Ping timeout: 240 seconds) |
19:59:54 | * | nsf quit (Quit: WeeChat 2.7) |
20:00:24 | Araq | don't mutate static strings |
20:01:03 | disruptek | i guess that makes sense. |
20:01:13 | disruptek | well, it's on the stack. who cares? |
20:03:59 | disruptek | seems to work if i take the addr of the stack var. but something else breaks in my tests. |
20:07:05 | disruptek | $cstring(something) makes a string that has a len equal to that of the cstring, without regard to the terminator. |
20:07:40 | disruptek | then == for "123" == "123" fails because one of 'em has a remarkably !3 length. |
20:14:53 | * | dadada joined #nim |
20:15:03 | * | leorize quit (Ping timeout: 240 seconds) |
20:15:16 | * | dadada is now known as Guest93045 |
20:15:55 | * | leorize joined #nim |
20:16:27 | disruptek | ah, i'll just use a nim string and setLen to truncate it at the correct point. |
20:18:31 | leorize[m] | the pattern to get a cstring from C is: str = newString(bufsize); callC(cstring str); setLen(len(cstring(str))) |
20:19:26 | * | Guest93045 is now known as dadada |
20:21:44 | disruptek | i was only using a cstring because i wanted the terminator semantic, but as long as i'm using a nim string, do i have to worry about `result` getting alloc'd (200 chars?) upon entry? |
20:21:50 | disruptek | that's the bit i'm trying to avoid. |
20:22:45 | disruptek | guess i'll return a string ref. |
20:24:20 | * | tefter quit (Quit: WeeChat 2.7) |
20:24:33 | Araq | no |
20:25:31 | Araq | use a Nim string with setLen |
20:25:45 | Araq | or maybe an array[30, char] |
20:26:12 | disruptek | yeah, setLen seems like the most sensible. |
20:26:55 | * | letto quit (Quit: Konversation terminated!) |
20:28:54 | * | letto joined #nim |
20:30:31 | disruptek | i guess ryu is done for some values of x. |
20:31:15 | * | gangstacat quit (Quit: Δis!) |
20:31:52 | * | ptdel quit (Ping timeout: 260 seconds) |
20:33:31 | Araq | \o/ |
20:34:52 | Zevv | but you need to test *all* off them |
20:35:21 | disruptek | 128bit yields quite a few values, zevv. |
20:35:34 | disruptek | how about you test half? |
20:36:24 | Zevv | *all* |
20:36:39 | disruptek | you wanna test them all? |
20:36:47 | Zevv | you just should have followed my advice and put them all in a table, would have been much faster |
20:37:29 | disruptek | ima whip some up ahead of time and let people fill out a web form to order fresh values for delivery anywhere in the world. |
20:37:55 | Zevv | right! |
20:38:13 | FromGitter | <Varriount> Araq: Regarding https://github.com/nim-lang/RFCs/issues/188#issuecomment-584053806 , what compilers are we looking to support for instruction set intrinsics? |
20:38:13 | disbot | β₯ [performance] performance tricks to improve std/json, parsers, lookups |
20:47:18 | * | Trustable quit (Remote host closed the connection) |
20:49:41 | FromDiscord | <clyybber> disruptek: Did you start on d2s? |
20:50:45 | * | filcuc joined #nim |
20:51:36 | disruptek | yeah. |
20:51:47 | FromDiscord | <clyybber> oh ok |
20:51:48 | disruptek | see d2s branch. |
20:51:52 | FromDiscord | <clyybber> I'll stop then |
20:52:41 | disruptek | boundary round even breaks with an incorrect value, so that's interesting. |
20:53:55 | FromDiscord | <clyybber> d2s or f2s? |
20:54:09 | disruptek | f2s with the small table optimization. |
20:54:21 | FromDiscord | <clyybber> oh |
20:54:27 | disruptek | 3.4366718E10 versus 3.436672E10 |
20:54:29 | FromDiscord | <clyybber> wait a minute |
20:56:09 | FromDiscord | <clyybber> disruptek: try f2s with this: http://ix.io/2bru |
20:56:13 | FromDiscord | <clyybber> this is my version |
20:56:21 | FromDiscord | <clyybber> its pretty raw |
20:57:23 | FromDiscord | <clyybber> I translated the casts literally, so you need the first bit of this common.nim: http://ix.io/2brv |
20:57:26 | disruptek | well, does it work? |
20:57:33 | FromDiscord | <clyybber> it doesn't compile :p |
20:57:37 | FromDiscord | <clyybber> but due to common.nim |
20:57:46 | FromDiscord | <clyybber> But maybe you can diff it |
20:58:01 | FromDiscord | <clyybber> To see where yours differs |
20:58:10 | FromDiscord | <clyybber> maybe that leads us to the error |
20:58:16 | disruptek | what error? |
20:58:24 | FromDiscord | <clyybber> that it doesn't work? |
20:58:28 | FromDiscord | <clyybber> small table? |
20:58:42 | disruptek | i /just/ started on it. |
21:00:19 | * | filcuc quit (Remote host closed the connection) |
21:03:15 | * | narimiran quit (Ping timeout: 240 seconds) |
21:03:16 | * | muffindrake quit (Quit: muffindrake) |
21:03:27 | * | filcuc joined #nim |
21:03:29 | * | muffindrake joined #nim |
21:08:42 | disruptek | off by one somewhere. |
21:09:12 | disruptek | low for vp. |
21:10:09 | * | ng0_ is now known as ng0 |
21:15:27 | dom96 | hello hello |
21:15:45 | FromDiscord | <clyybber> sup |
21:16:03 | FromDiscord | <clyybber> is nims mod the same as C's % ? |
21:16:06 | FromDiscord | <clyybber> I forgot |
21:17:20 | FromDiscord | <Recruit_main_70007> yeah, at least its python's % |
21:18:18 | FromDiscord | <clyybber> nah, its not pythons % |
21:18:33 | FromDiscord | <clyybber> python doesn't return negative remainder |
21:20:16 | FromDiscord | <clyybber> ah, nice. We are the same as C % |
21:26:17 | FromDiscord | <exelotl> dang push/pop pragmas don't work for templates :( |
21:27:54 | FromDiscord | <exelotl> I have a macro that generates getter/setter templates and I can't find a way to disable the XDeclaredButNotUsed warnings for just those defs |
21:28:15 | disruptek | add a {.used.} pragma where necessary. |
21:28:30 | FromDiscord | <exelotl> aha |
21:28:58 | FromDiscord | <exelotl> thanks that's perfect |
21:29:02 | disruptek | np |
21:46:32 | * | deepend quit (Quit: o/) |
21:46:57 | * | deepend joined #nim |
21:51:38 | * | gangstacat joined #nim |
21:57:12 | * | Zectbumo joined #nim |
22:10:01 | * | filcuc quit (Quit: Konversation terminated!) |
22:18:05 | FromDiscord | <exelotl> I did a thing https://gist.github.com/exelotl/1f387c47468d02be4587044ed270c907 |
22:18:26 | lqdev[m] | I'm trying to use the `cairo` library bindings for Nim, but the problem is that I can't use anything. `import cairo; var surface*: ptr Surface` gives me an error "undeclared identifier: 'Surface'" even though Surface is clearly declared in the cairo module. |
22:18:53 | disruptek | lqdev[m]: treeform took those over. maybe see if he has a branch. |
22:19:29 | lqdev[m] | I know he took those over, but araq was merging his PRs recently so I thought upstream would work |
22:19:46 | FromDiscord | <clyybber> disruptek: Hey, I just finished f2s for fun |
22:19:51 | FromDiscord | <clyybber> and it doesn't fail all tests |
22:20:02 | disruptek | with 128bit? |
22:20:09 | FromDiscord | <clyybber> nah f2s |
22:20:13 | FromDiscord | <clyybber> unneccessary work |
22:20:23 | FromDiscord | <clyybber> but I had it done anyways |
22:20:32 | disruptek | yes, but try running it with -D:ryuOptimizeSize or w/e. |
22:20:34 | FromDiscord | <clyybber> just to see if it works |
22:20:40 | disruptek | then you get a cookie. |
22:20:43 | FromDiscord | <clyybber> yeah, not that far yet |
22:20:48 | * | letto quit (Ping timeout: 265 seconds) |
22:20:49 | FromDiscord | <clyybber> hehe |
22:21:00 | lqdev[m] | everything import works fine for vladar's sdl2 bindings |
22:21:45 | FromDiscord | <clyybber> disruptek: Did you hit this: https://hastebin.com/witacoriyi.sql too? |
22:22:16 | FromDiscord | <clyybber> these are the only ones that fail here |
22:23:03 | lqdev[m] | ah wait, it's still pulling the old tag |
22:23:16 | disruptek | it looks like you need to truncate. |
22:23:19 | disruptek | setLen |
22:23:19 | lqdev[m] | how do I tell nimble to pull HEAD? preferably in my .nimble file |
22:23:31 | disruptek | somepkg#head |
22:23:45 | FromDiscord | <clyybber> disruptek: Nah, I'm doing the strip hack for now. I'm getting inaccuracies |
22:24:00 | disruptek | oh, i see that now. |
22:24:36 | disruptek | check the pow5bits |
22:25:07 | disruptek | i wish the test suite was a little more comprehensive. π |
22:25:08 | lqdev[m] | .disruptek: `Unable to parse dependency version range: Unexpected char in version range ' #head': #.` |
22:25:17 | disruptek | no spaces. |
22:25:22 | lqdev[m] | ah, ok |
22:25:25 | lqdev[m] | damn |
22:25:28 | disruptek | yeah. |
22:25:41 | disruptek | also, please don't publish a #head req. |
22:26:12 | FromDiscord | <clyybber> disruptek: Why do you + 1 there? |
22:26:16 | FromDiscord | <clyybber> ah nevermind |
22:26:21 | FromDiscord | <clyybber> I can't read my own code lol |
22:26:26 | disruptek | ulf told me it was a good idea. |
22:26:45 | FromDiscord | <clyybber> hmm |
22:26:53 | disruptek | but i do have an off-by-one somewhere. that, or our int128 type is bugged. |
22:26:54 | FromDiscord | <clyybber> my pow5bit looks exactly the same |
22:27:53 | disruptek | what's weird is, our int128 /seems to be producing *more correct* results than expected/ |
22:28:15 | disruptek | ie. tighter bounds. |
22:29:10 | disruptek | we should probably port the table generator too, for completeness. |
22:29:28 | disruptek | it would suck biggly if our constants were somehow bugged. |
22:30:21 | * | letto joined #nim |
22:33:43 | disruptek | i dunno how to license this stuff, either. |
22:34:09 | FromDiscord | <clyybber> apache |
22:34:13 | FromDiscord | <clyybber> like ulfjack |
22:36:57 | FromDiscord | <clyybber> disruptek: Eh, did you port d2s_intrinsicis? |
22:46:01 | * | abm joined #nim |
22:48:23 | * | solitudesf quit (Ping timeout: 268 seconds) |
22:48:32 | FromDiscord | <clyybber> ah, I see it isn't needed |
22:48:38 | FromDiscord | <clyybber> what about umul128 tho? |
22:49:27 | disruptek | what about it? |
22:49:49 | FromDiscord | <clyybber> disruptek: how did you import it? |
22:50:34 | disruptek | anything missing symbols, i just delete. |
22:51:16 | FromDiscord | <clyybber> hehe |
22:51:28 | FromDiscord | <clyybber> no but really, did you import it from C ? |
22:52:43 | disruptek | nah. |
22:53:31 | FromDiscord | <clyybber> how how how |
22:53:45 | * | Hideki_ joined #nim |
22:54:09 | FromDiscord | <clyybber> oh |
22:54:18 | FromDiscord | <clyybber> u use int128 |
22:54:19 | FromDiscord | <clyybber> nice |
22:55:02 | disruptek | yeah. |
22:55:25 | FromDiscord | <clyybber> I'm gonna try the umul way |
22:55:39 | FromDiscord | <clyybber> maybe that shows us the error |
22:58:03 | * | Hideki_ quit (Ping timeout: 240 seconds) |
22:58:32 | disruptek | that seems valuable. |
23:03:30 | FromDiscord | <exelotl> hey does anyone know a better name for the macro in the gist I posted above? |
23:04:00 | disruptek | teh confusor |
23:04:22 | disruptek | implicit behavior generator 9000 |
23:04:52 | disruptek | the semantic obfuscator |
23:05:09 | FromDiscord | <exelotl> wao |
23:05:10 | disruptek | the wheel of misfortune |
23:05:50 | FromDiscord | <exelotl> I'll call it the disruptekinator |
23:05:50 | disruptek | rando symbo 4.0 |
23:06:20 | disruptek | level seven stupid |
23:07:17 | disruptek | the orb of disturbance |
23:07:22 | FromDiscord | <exelotl> petition to replace Nim's name mangling rules with a direct connection into disruptek's brain |
23:07:37 | disruptek | terry the wonder weasel |
23:07:55 | FromDiscord | <exelotl> !stop |
23:07:59 | FromDiscord | <exelotl> !off |
23:08:04 | FromDiscord | <exelotl> !shutdown |
23:08:19 | disruptek | i actually have a thing called the "Safety Weasel" in nigel. |
23:09:03 | FromDiscord | <clyybber> safty wissel |
23:09:58 | disruptek | it's a simple leaky-bucket throttle so you don't blow up your cloud account. |
23:11:02 | disruptek | dude, i could really go for a weasel right now. |
23:11:16 | disruptek | i mean, not a weasel. skittles. i could really go for some skittles right now. |
23:20:46 | FromDiscord | <clyybber> AAAAH |
23:20:52 | FromDiscord | <clyybber> cannot include <intrin.h> |
23:21:20 | shashlick | Araq: your choosenim milestone is done - https://github.com/dom96/choosenim/milestones |
23:22:07 | Araq | hmm so what I'm gonna complain about? |
23:22:24 | Araq | no arguments left, good job :-) |
23:22:56 | shashlick | π:skin-tone-3: |
23:25:19 | stefantalpalaru | "--skipUserCfg --skipParentCfg" is not added in all compilation steps, when building the Nim compiler, so having a --passC:"-march=native" in a nim.cfg in some parent dir breaks compilation in iteration 3: https://dev.azure.com/nimbus-dev/e48a97ce-60bd-4c43-a919-71a3ababfa4c/_apis/build/builds/1591/logs/18 |
23:25:43 | stefantalpalaru | It's hitting this Mingw-w64 bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65782 |
23:27:32 | stefantalpalaru | (or some other bug, since I already added the --passC:"-fno-asynchronous-unwind-tables" workaround) |
23:28:29 | disruptek | i guess don't do that. |
23:29:44 | disruptek | shashlick: what's the best way for me to find out if choosenim is working? is there a status page? |
23:33:29 | shashlick | why wouldn't it work most of the time |
23:34:47 | disruptek | i'm afraid you're asking the wrong bloke. |
23:35:35 | disruptek | maybe there's a way to programmatically see which versions work and publish that info to others? |
23:36:02 | FromDiscord | <clyybber> disruptek: hahahaha |
23:36:05 | FromDiscord | <clyybber> all tests fail |
23:36:15 | FromDiscord | <clyybber> except for really basic |
23:36:20 | FromDiscord | <clyybber> with RYU_OPTIMIZE_SIZE |
23:36:24 | disruptek | hey, that's something. |
23:36:38 | FromDiscord | <clyybber> and I translated VERY faithfully to the C version |
23:36:46 | disruptek | that's your problem. |
23:36:51 | FromDiscord | <clyybber> maybe |
23:36:53 | FromDiscord | <clyybber> the tests |
23:36:56 | FromDiscord | <clyybber> arent supposed to pass |
23:37:03 | disruptek | i guess i will do a little more work on this. |
23:37:03 | FromDiscord | <clyybber> for RYU_OPTIMIZE_SIZE |
23:37:19 | disruptek | i'm kinda feeling like, "eh, i have other more interesting stuff to do" |
23:37:32 | FromDiscord | <clyybber> yeah, understandable |
23:38:07 | disruptek | it was just something i said i'd do early on when i had no idea what was involved. π |
23:38:18 | FromDiscord | <clyybber> I can take over if you want |
23:38:41 | disruptek | let's just see if int128 can work, or if it exposes a compiler bug. |
23:38:47 | FromDiscord | <clyybber> aight |
23:39:13 | disruptek | i'll give you some numbers, you do some int128 math on them, okay? |
23:41:26 | shashlick | disruptek: how about you give me a bug i can work on? cause the latest version works pretty well |
23:41:35 | shashlick | and i don't see a good reason to use older versions of choosenim |
23:41:47 | disruptek | okay, what's the current version? |
23:41:58 | disruptek | and will that work with any later nim? |
23:42:11 | shashlick | 0.5.1 is latest but #head has a bunch more good features |
23:42:20 | shashlick | will release another version once we fix the osx crash issue |
23:43:01 | * | sekao joined #nim |
23:43:11 | disruptek | so basically, when someone comes in here saying they have a choosenim problem, i should reply "0.5.1 is latest, but #head has more good features. the latest one works pretty well, but i'm sure where. i do know there's an osx crash issue." |
23:44:22 | disruptek | which nightlies don't work? is that only inside choosenim? or is it a completely unrelated issue? i wasn't able to follow... |
23:44:55 | * | ptdel joined #nim |
23:45:15 | shashlick | nightlies isn't building since the last few days so we have no new nightly devel releases |
23:45:27 | disruptek | so, a nim repo issue. |
23:45:36 | shashlick | not related to choosenim |
23:45:54 | disruptek | right. choosenim devel will choose, what, a devel from a few days ago? but, it'll work fine otherwise? |
23:46:08 | shashlick | https://github.com/nim-lang/Nim/pull/13328 is the problem |
23:46:10 | disbot | β₯ nim secret: support linenoise when available ; snippet at 12https://play.nim-lang.org/#ix=2bqY |
23:46:30 | shashlick | `choosenim devel` will work fine since it will use csources from the csources repo to bootstrap |
23:46:43 | shashlick | see https://github.com/nim-lang/Nim/pull/13328#issuecomment-584886841 |
23:46:44 | disbot | β₯ nim secret: support linenoise when available ; snippet at 12https://play.nim-lang.org/#ix=2bqY |
23:47:09 | disruptek | oh, i didn't realize i was rehashing email. my bad. |
23:47:18 | disruptek | i rarely read email these days. |
23:47:27 | * | krux02 joined #nim |
23:49:28 | disruptek | so 0.5.2 will be the best version to recommend, soon. |
23:50:01 | disruptek | ~choosenim is https://github.com/dom96/choosenim/releases/tag/v0.5.1 |
23:50:02 | disbot | choosenim: 11https://github.com/dom96/choosenim/releases/tag/v0.5.1 |
23:51:40 | * | dddddd quit (Ping timeout: 265 seconds) |
23:52:27 | FromDiscord | <clyybber> hmm |
23:52:40 | FromDiscord | <clyybber> somehow ulfjacks ryu can work just fine with small table |
23:53:00 | disruptek | why wouldn't it? |
23:56:02 | FromDiscord | <clyybber> I dunno |
23:56:10 | FromDiscord | <clyybber> I wonder why we don't |
23:56:37 | shashlick | Yep, 0.6.0 will be next |
23:56:39 | FromDiscord | <clyybber> well |
23:56:42 | shashlick | New features and all |
23:56:45 | FromDiscord | <clyybber> at least we fail SPECTACULARILY |
23:57:46 | disruptek | i just realized that these debugging statements alter the order of the values. |
23:57:58 | disruptek | where do these people come from? |
23:58:01 | disruptek | i really want to know. |
23:58:05 | FromDiscord | <clyybber> wdym alter the order? |
23:59:30 | disruptek | it was /my/ debugging. |