<< 09-02-2020 >>

00:00:02*junland quit (Quit: %ZNC Disconnected%)
00:02:17*junland joined #nim
00:04:58*theelous3 joined #nim
00:09:37*u0_a121 quit (Read error: Connection reset by peer)
00:11:16*theelous3 quit (Ping timeout: 268 seconds)
00:13:30*u0_a121 joined #nim
00:15:08*Trustable quit (Remote host closed the connection)
00:17:25*u0_a121 quit (Read error: Connection reset by peer)
00:32:36*theelous3 joined #nim
00:35:06*JohnAD quit (Ping timeout: 256 seconds)
00:37:36*thomasross is now known as Guest29729
00:37:36*thomasross_ joined #nim
00:37:36*Guest29729 quit (Killed (adams.freenode.net (Nickname regained by services)))
00:37:36*thomasross_ is now known as thomasross
00:41:34*u0_a121 joined #nim
00:44:01*Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:53:50*krux02_ joined #nim
00:56:03*u0_a121 quit (Read error: Connection reset by peer)
00:56:38*krux02 quit (Ping timeout: 256 seconds)
00:59:28*theelous3 quit (Ping timeout: 256 seconds)
01:01:55*Hideki_ joined #nim
01:07:51*ng0 joined #nim
01:10:48*ng0_ quit (Ping timeout: 256 seconds)
01:16:48*u0_a121 joined #nim
01:25:35FromDiscord_<Elegant Beef> Is this still the only method for composition in nim?
01:25:35FromDiscord_<Elegant Beef> https://openmymind.net/Interfaces-In-Nim/
01:32:41*u0_a121 quit (Read error: Connection reset by peer)
01:33:27leorize!repo interfaced
01:33:30disbothttps://github.com/andreaferretti/interfaced -- 9interfaced: 11 15 21⭐ 4🍴 & 29 more...
01:34:49leorize!repo protocoled
01:34:52disbothttps://github.com/b3liever/protocoled -- 9protocoled: 11Interface macro for nim 15 17⭐ 0🍴 7& 25 more...
01:34:59leorize@Elegant Beef: there you go
01:40:22*u0_a121 joined #nim
01:40:26FromDiscord_<Rika> Concepts are kinda interface-y no?
01:48:53*ng0_ joined #nim
01:51:38*ng0 quit (Ping timeout: 260 seconds)
01:52:00ftsfkinda
01:52:16ftsfi'm sure there's a bunch of differences, but they feel pretty interfacey to me
01:59:19FromDiscord_<Elegant Beef> Thanks
02:02:14FromDiscord_<Elegant Beef> Got the docs for concepts?
02:02:41*krux02_ is now known as krux02
02:03:27*Hideki_ quit (Ping timeout: 240 seconds)
02:04:10ftsfmmm they seem to be missing from the manual!
02:04:22FromDiscord_<Elegant Beef> That's what i thought
02:04:27FromDiscord_<Elegant Beef> Also couldnt find anything for impl either
02:05:27Jjp137the docs are in the experimental part of the manual: https://nim-lang.org/docs/manual_experimental.html#concepts
02:06:00FromDiscord_<Elegant Beef> Ok, thanks
02:06:12ftsfooh didn't know about that page
02:07:31FromDiscord_<Elegant Beef> Ah so seems concepts are just T.Method, so basically interfaces
02:07:38FromDiscord_<Elegant Beef> Ah so seems concepts are just T.MethodName, so basically interfaces
02:08:26*NimBot joined #nim
02:11:06*martinium quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:11:56ftsfhttps://github.com/nim-lang/Nim/issues/1019#issuecomment-38201498 mentions some methods you can use for emulating varadic generics, anyone know where i can find examples of these methods?
02:11:57disbotRFC: Variadic Generics [$50]
02:16:32*u0_a121 quit (Read error: Connection reset by peer)
02:17:39FromDiscord_<Elegant Beef> So with this basic thing what's the proper thing to do?
02:17:40FromDiscord_<Elegant Beef> https://play.nim-lang.org/#ix=2bav
02:18:19FromDiscord_<Elegant Beef> Secondly would it be possible to also "implement" IMoveable
02:23:19*hax-scramper quit (Ping timeout: 256 seconds)
02:25:27*chemist69 quit (Ping timeout: 240 seconds)
02:27:06*krux02 quit (Remote host closed the connection)
02:27:43*chemist69 joined #nim
02:29:42*krux02 joined #nim
02:31:02leorizenote that concepts are compile-time generic types
02:33:07*krux02 quit (Remote host closed the connection)
02:56:17*hax-scramper joined #nim
03:02:50FromDiscord_<Winton> Breve Introducción Nim: https://youtu.be/xWMG_1karfM
03:05:32FromDiscord_<treeform> what https://nim-lang.org/docs/strformat.html does not support commas such as 1,234,567.89 ?
03:06:32disrupteklocale-dependent.
03:06:56FromDiscord_<treeform> well yeah, but still there is only , and .
03:08:30*thomasross_ joined #nim
03:08:30*thomasross is now known as Guest42794
03:08:30*Guest42794 quit (Killed (cherryh.freenode.net (Nickname regained by services)))
03:08:30*thomasross_ is now known as thomasross
03:13:22*thomasross quit (Read error: Connection reset by peer)
03:13:50*thomasross joined #nim
03:14:36FromDiscord_<Rika> @Elegant Beef if you wanna enforce a type to conform to a concept, do "doAssert typ is cncpt"
03:14:45FromDiscord_<Rika> In the body of your program or something
03:16:05*xace quit (Ping timeout: 265 seconds)
03:16:22*xace joined #nim
03:17:23leorizeor just take the concept as the parameter
03:18:07FromDiscord_<Rika> That too if you want to make the proc generic for the concept
03:18:10FromDiscord_<Elegant Beef> Uhh, yes i totally understand, but for my friend in the back of the class?
03:19:38*thomasross quit (Read error: Connection reset by peer)
03:19:43FromDiscord_<Rika> I don't think you can make a seq of a certain concept
03:20:14FromDiscord_<Elegant Beef> So then how would you store a dynamic list of objects that implement this concept?
03:20:28*thomasross joined #nim
03:20:58*thomasross_ joined #nim
03:20:58*thomasross quit (Killed (adams.freenode.net (Nickname regained by services)))
03:20:58*thomasross_ is now known as thomasross
03:21:05leorizeconcept is a compile-time construct
03:21:22FromDiscord_<Elegant Beef> So it's useless to me
03:21:40leorizeuse the macros that I posted earlier for runtime constructs
03:22:49FromDiscord_<Elegant Beef> Well ill try it
03:23:07FromDiscord_<Elegant Beef> Concepts looked like what i wanted but i guess not since they dont exist at runtime
03:24:50*u0_a121 joined #nim
03:27:31*u0_a121 quit (Read error: Connection reset by peer)
03:31:19*muffindrake quit (Ping timeout: 256 seconds)
03:31:33*u0_a121 joined #nim
03:33:35*muffindrake joined #nim
03:43:41*thomasross quit (Read error: Connection reset by peer)
03:44:45*thomasross joined #nim
03:45:57*ng0 joined #nim
03:47:45*u0_a121 quit (Ping timeout: 256 seconds)
03:48:27*ng0_ quit (Ping timeout: 240 seconds)
03:50:46*lritter quit (Quit: Leaving)
04:01:01*Hideki_ joined #nim
04:05:19*Hideki_ quit (Ping timeout: 260 seconds)
04:06:54*thomasross quit (Read error: Connection reset by peer)
04:20:52*thomasross joined #nim
04:25:27*thomasross quit (Ping timeout: 240 seconds)
04:33:58*thomasross joined #nim
04:52:26*ng0_ joined #nim
04:55:15*ng0 quit (Ping timeout: 260 seconds)
04:59:50ftsfis there a way to read compileTime data at runtime?
05:00:23ftsfi created a {.compileTime.} seq and i'd like to be able to read it at runtime
05:00:37ftsfbut when i read it at runtime it's empty
05:01:37ftsffrom manual "compileTime variables are available at runtime too. This simplifies certain idioms where variables are filled at compile-time (for example, lookup tables) but accessed at runtime:
05:01:37ftsf"
05:01:48ftsfit does seem to be available, but is empty
05:03:39FromGitter<Varriount> ftsf: what about trying it with an object or array?
05:05:48FromDiscord_<Elegant Beef> So i did try protocoled and the `toInterface` proc seemed to be borked, although manually casting to worked, but i could not seem to get it back from the interface
05:06:04ftsfyeah, still zero, array is all zeros, int is zeroed
05:13:59*martinium joined #nim
05:16:28leorizeit's a bug then
05:19:21ftsfhttps://play.nim-lang.org/#ix=2bb5
05:19:44ftsfit works reading the compileTime var in the main block, but once it's inside a loop it's zeroed
05:20:59leorizethat's a bug for sure
05:22:03ftsfmmm, can reproduce it with the example from the manual just by adding a loop around the assert
05:22:07ftsfi'll file an issue
05:33:04ftsfhttps://github.com/nim-lang/Nim/issues/13375
05:33:06disbotAccessing compileTime variable at runtime returns zeroed data. ; snippet at 12https://play.nim-lang.org/#ix=2bba
05:35:01ftsfhmm wonder if there's a way to workaround this for now
05:47:20ftsfaha, this seems to be the same issue
06:01:49*martinium quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
06:04:49*martinium joined #nim
06:06:38*ng0 joined #nim
06:08:18*thomasross quit (Ping timeout: 260 seconds)
06:10:10*ng0_ quit (Ping timeout: 268 seconds)
06:11:39*narimiran joined #nim
06:13:30*thomasross joined #nim
06:18:51*thomasross quit (Ping timeout: 272 seconds)
06:22:18*thomasross joined #nim
06:48:39*dddddd quit (Ping timeout: 260 seconds)
06:51:55*u0_a121 joined #nim
06:54:19*u0_a121 quit (Read error: Connection reset by peer)
06:56:16*u0_a121 joined #nim
06:58:29*u0_a121 quit (Read error: Connection reset by peer)
07:00:18*u0_a121 joined #nim
07:05:30*martinium quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:09:06*u0_a121 quit (Read error: Connection reset by peer)
07:10:19*u0_a121 joined #nim
07:12:55*u0_a121 quit (Read error: Connection reset by peer)
07:15:50*hax-scramper quit (Read error: Connection reset by peer)
07:16:05*hax-scramper joined #nim
07:20:15*u0_a121 joined #nim
07:34:01*solitudesf joined #nim
07:37:23*Zectbumo joined #nim
07:39:27*u0_a121 quit (Read error: Connection reset by peer)
07:42:19*u0_a121 joined #nim
07:45:47*u0_a121 quit (Read error: Connection reset by peer)
07:59:14*thomasross quit (Ping timeout: 240 seconds)
08:00:00*gmpreussner quit (Quit: kthxbye)
08:02:33*Hideki_ joined #nim
08:03:33*u0_a121 joined #nim
08:04:04*letto quit (Quit: Konversation terminated!)
08:04:49*letto joined #nim
08:04:56*gmpreussner joined #nim
08:07:20*Hideki_ quit (Ping timeout: 268 seconds)
08:12:58*u0_a121 quit (Read error: Connection reset by peer)
08:28:18*u0_a121 joined #nim
08:30:06*solitudesf quit (Remote host closed the connection)
08:30:31*solitudesf joined #nim
08:31:22*thomasross joined #nim
08:31:37*adalricus joined #nim
08:32:24FromGitter<Varriount> ftsf: What about (as a workaround) serializing the object to a string and assigning to a constant via a macro?
08:32:37FromGitter<Varriount> Or just assigning a copy of the object to a macro
08:32:44ftsfmmm i've got a workaround for now
08:32:56ftsfseems like it's all working without having to do compileTime
08:35:01*u0_a121 quit (Read error: Connection reset by peer)
08:39:37*theelous3 joined #nim
08:48:03*u0_a121 joined #nim
08:49:31*ftsf quit (Ping timeout: 260 seconds)
08:56:01*solitudesf quit (Ping timeout: 256 seconds)
09:00:17*dadada joined #nim
09:00:42*dadada is now known as Guest73153
09:01:08*filcuc joined #nim
09:06:49*ftsf joined #nim
09:08:47*thomasross quit (Ping timeout: 240 seconds)
09:12:50*hax-scramper quit (Ping timeout: 240 seconds)
09:13:07*hax-scramper joined #nim
09:13:45*thomasross joined #nim
09:15:02FromGitter<Varriount> ftsf: So it affects loops? Not everything
09:15:04FromGitter<Varriount> ?
09:15:24ftsfno, just loops are runtime only, seems to affect anything after any runtime code
09:16:17*krux02 joined #nim
09:16:43*nsf joined #nim
09:29:42*thomasross quit (Ping timeout: 265 seconds)
09:41:00*u0_a121 quit (Remote host closed the connection)
09:41:18*u0_a121 joined #nim
09:44:39*u0_a121 quit (Read error: Connection reset by peer)
09:44:44FromGitter<Varriount> ftsf: If you're still around, what does the resulting C code look like?
09:45:03ftsfahh i dunno.. it's not very readable to me
09:52:10FromGitter<Varriount> https://gist.github.com/Varriount/b93c845f0632ca2d6b6099f7443a356d
09:56:17*hax-scramper quit (Ping timeout: 265 seconds)
09:56:21*adalricus quit (Remote host closed the connection)
09:56:27*hax-scramper joined #nim
10:00:37FromGitter<Varriount> ftsf: Do you get a segmentation fault?
10:00:52FromGitter<Varriount> Because I do
10:01:44ftsfnope, https://github.com/nim-lang/Nim/issues/13375 is reproducable on playground, gets an index out of bounds error
10:01:45disbotAccessing compileTime variable at runtime returns zeroed data. ; snippet at 12https://play.nim-lang.org/#ix=2bba
10:02:50FromGitter<Varriount> Ah, ok
10:02:54FromGitter<Varriount> That would cause it
10:03:16*thomasross joined #nim
10:03:18ftsfprior to 1.0.0 it doesn't compile as compileTime behaviour seems to have changed then
10:14:02*thomasross quit (Ping timeout: 240 seconds)
10:22:23*narimiran quit (Ping timeout: 260 seconds)
10:30:47*hax-scramper quit (Ping timeout: 240 seconds)
10:31:40*Ven`` joined #nim
10:33:59*hax-scramper joined #nim
10:36:59*thomasross joined #nim
10:42:59*u0_a121 joined #nim
10:46:04*arecaceae quit (Remote host closed the connection)
10:46:28*arecaceae joined #nim
10:50:14*Hideki_ joined #nim
10:50:28*Hideki_ quit (Remote host closed the connection)
10:50:41*Hideki_ joined #nim
10:51:39*Guest73153 is now known as dadada
10:55:54*u0_a121 quit (Read error: Connection reset by peer)
10:57:02*jjido joined #nim
11:03:04*hax-scramper quit (Read error: Connection reset by peer)
11:03:46*hax-scramper joined #nim
11:11:53*ng0_ joined #nim
11:13:13*leorize quit (Remote host closed the connection)
11:13:13*opal quit (Read error: Connection reset by peer)
11:14:48*ng0 quit (Ping timeout: 268 seconds)
11:14:59*Hideki_ quit (Remote host closed the connection)
11:15:45*Hideki_ joined #nim
11:16:27*opal joined #nim
11:20:23*Hideki_ quit (Ping timeout: 260 seconds)
11:26:40*thomasross_ joined #nim
11:26:51*thomasross quit (Killed (orwell.freenode.net (Nickname regained by services)))
11:26:51*thomasross_ is now known as thomasross
11:27:03FromGitter<Varriount> ftsf: It doesn't look like you're actually using the variable at compile time though, just generating code that references it.
11:28:03FromGitter<Varriount> Compile time usage would be modifying the sequence inside the macro, outside the quote block.
11:28:39*Hideki_ joined #nim
11:36:47*Hideki_ quit (Ping timeout: 272 seconds)
11:37:02*u0_a121 joined #nim
11:42:06FromDiscord_<mratsim> compiletime var crossing to runtime boundaries are broken
11:42:23FromDiscord_<mratsim> I'm not aware of an example that worked
11:47:51*Hideki_ joined #nim
11:48:15*leorize joined #nim
11:52:47FromGitter<kristianmandrup> Is there any way I can achieve this with Nim?
11:52:57FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff299ecfa4461c04cc607]
11:53:35FromGitter<kristianmandrup> Essentially trying to bind the generated var name `x` to the imported `x$$`
11:53:55FromGitter<kristianmandrup> What the above generates... ⏎ ⏎ ```var object_id_51437 = [0]; ⏎ import { x as x$$ } from './aba'``` [https://gitter.im/nim-lang/Nim?at=5e3ff2d31d23aa47aa032a08]
11:55:39*hax-scramper quit (Ping timeout: 256 seconds)
11:55:42FromGitter<kristianmandrup> Is this sort of macro only available for `proc`? a pity
11:57:22FromGitter<kristianmandrup> Also, Nim should support some kind of "at top" pragma, such as `{.emitTop: "import { x as x$$ } from './aba'" .}`
11:58:52*natrys joined #nim
11:59:14*thomasross quit (Ping timeout: 240 seconds)
11:59:19*thomasross_ joined #nim
11:59:19*thomasross_ is now known as thomasross
12:02:02lqdev[m]I think emit supports some directives for where the generated code should be placed. let me check
12:02:28FromGitter<kristianmandrup> I found this
12:02:41FromGitter<kristianmandrup> For a toplevel emit statement the section where in the generated C/C++ file ⏎ the code should be emitted can be influenced via the ⏎ prefixes ``/*TYPESECTION*/`` or ``/*VARSECTION*/`` or ``/*INCLUDESECTION*/``: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff4e155b6b04bf6a00217]
12:04:17FromGitter<kristianmandrup> Then I get
12:04:29FromGitter<kristianmandrup> ```var object_id_51437 = [0]; ⏎ /*TYPESECTION*/import { x as x$$ } from './aba'``` [https://gitter.im/nim-lang/Nim?at=5e3ff54c55b6b04bf6a002f1]
12:04:53FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff565df1153705e24a9c9]
12:06:03FromGitter<kristianmandrup> Also, what is the `nodecl` pragma used in some places?
12:06:54FromGitter<kristianmandrup> `lfNoDecl, # do not declare it in C`
12:06:56lqdev[m]it marks that the thing it's attached to should not generate any code.
12:07:27lqdev[m]also I think that INCLUDESECTION could work better for you
12:08:07FromGitter<kristianmandrup> The ``noDecl`` pragma can be applied to almost any symbol (variable, proc, ⏎ type, etc.) and is sometimes useful for interoperability with C: ⏎ It tells Nim that it should not generate a declaration for the symbol in ⏎ the C code. For example: ⏎ ... [https://gitter.im/nim-lang/Nim?at=5e3ff62755b6b04bf6a003fb]
12:08:43FromGitter<kristianmandrup> The header pragma sounds like it would be ideal, but likely also works for C code at present
12:09:22*Hideki_ quit (Remote host closed the connection)
12:10:11FromGitter<kristianmandrup> using include section, same result
12:10:11*Hideki_ joined #nim
12:10:16FromGitter<kristianmandrup> ```var object_id_51437 = [0]; ⏎ /*INCLUDESECTION*/import { x as x$$ } from './aba'``` [https://gitter.im/nim-lang/Nim?at=5e3ff6a83716b919ba0934f7]
12:11:06FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff6da63c15921f46ae7c6]
12:12:10FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff71a3716b919ba0935b3]
12:14:55*Hideki_ quit (Ping timeout: 256 seconds)
12:15:06*thomasross is now known as Guest82305
12:15:06*thomasross_ joined #nim
12:15:06*Guest82305 quit (Killed (adams.freenode.net (Nickname regained by services)))
12:15:06*thomasross_ is now known as thomasross
12:18:52*u0_a121 quit (Read error: Connection reset by peer)
12:29:04FromGitter<kristianmandrup> I've raised this issue to address it: https://github.com/nim-lang/Nim/issues/13376
12:29:06disbotMake emit pragma work as expected for JS target with sections ; snippet at 12https://play.nim-lang.org/#ix=2bcp
12:30:35*Hideki_ joined #nim
12:33:17FromGitter<kristianmandrup> I found this forum thread on ES module support: https://forum.nim-lang.org/t/3755#26047
12:33:30*u0_a121 joined #nim
12:33:32FromGitter<kristianmandrup> Why has no effort been made to add this since Nov 2018?
12:39:31FromGitter<kristianmandrup> Looks like there is sth here: https://github.com/zacharycarter/nes
12:41:55*u0_a121 quit (Read error: Connection reset by peer)
12:46:37ftsfare there any good tools for debugging invalid memory usage in nim (on windows)? i'm doing something wrong and writing somewhere i shouldn't
12:49:29Araqtried Dr.Memory?
12:49:41ftsfi did, it crashed
12:50:08*thomasross is now known as Guest56571
12:50:08*thomasross_ joined #nim
12:50:08*Guest56571 quit (Killed (weber.freenode.net (Nickname regained by services)))
12:50:08*thomasross_ is now known as thomasross
12:51:31ftsfahh, works when i remove the SDL stuff
12:52:15*Hideki__ joined #nim
12:52:16*Hideki_ quit (Read error: Connection reset by peer)
12:59:56*thomasross_ joined #nim
12:59:56*thomasross quit (Killed (wilhelm.freenode.net (Nickname regained by services)))
12:59:56*thomasross_ is now known as thomasross
13:02:53*u0_a121 joined #nim
13:06:30*u0_a121 quit (Read error: Connection reset by peer)
13:06:35*jjido quit (Quit: Connection closed for inactivity)
13:06:47*uu91 quit (Remote host closed the connection)
13:16:33*u0_a121 joined #nim
13:18:46*u0_a121 quit (Read error: Connection reset by peer)
13:20:55*dddddd joined #nim
13:59:05FromGitter<kristianmandrup> anyone knows what this mean?
13:59:07FromGitter<kristianmandrup> `template/generic instantiation of `newSeq` from here`
13:59:18FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40103637545d247d2ba07a]
13:59:23ftsfread the next lines for context
13:59:38FromGitter<kristianmandrup> `nim-1.0.6/lib/system.nim(997, 10) Warning: Cannot prove that 'result' is initialized. This will become a compile time error in the future. [ProveInit]`
14:00:13FromGitter<kristianmandrup> https://play.nim-lang.org/#ix=2bcV
14:06:27*solitudesf joined #nim
14:06:52*filcuc quit (Quit: Konversation terminated!)
14:09:32*opal quit (Remote host closed the connection)
14:09:47*opal joined #nim
14:13:16*thomasross is now known as Guest3125
14:13:16*thomasross_ joined #nim
14:13:16*Guest3125 quit (Killed (adams.freenode.net (Nickname regained by services)))
14:13:16*thomasross_ is now known as thomasross
14:13:21*marmotini_ joined #nim
14:16:53*Zectbumo quit (Remote host closed the connection)
14:17:57*marmotini_ quit (Ping timeout: 268 seconds)
14:20:25*natrys quit (Ping timeout: 268 seconds)
14:20:52stefantalpalaruWhere is the nim.cfg syntax documented?
14:22:03*Pqzcih5 joined #nim
14:24:07*ftsf quit (Ping timeout: 256 seconds)
14:25:47*u0_a121 joined #nim
14:26:07*natrys joined #nim
14:27:58stefantalpalaruMaybe here? https://nim-lang.org/docs/parsecfg.html
14:28:27stefantalpalaruBut I don't see "@" being mentioned.
14:30:39*u0_a121 quit (Read error: Connection reset by peer)
14:49:46*narimiran joined #nim
14:55:10*Hideki__ quit (Remote host closed the connection)
14:55:45FromGitter<kristianmandrup> what is the right way to do null checks? `isNull`?
14:56:00FromGitter<kristianmandrup> or `if aliasNameArg != null` ?
14:57:14stefantalpalaruHow come "--import:foo" in a top-level nim.cfg or 'switch("import", "foo")' in a config.nims gives me the error "undeclared identifier: 'copyMem'"?
14:57:44FromGitter<kristianmandrup> ah, I see: `while aa != nil `
14:58:01*Hideki_ joined #nim
14:58:04stefantalpalaruAre there any other Nim scripts where this import kicks in? "copyMem()" would not be available in nimscript.
15:02:23*Hideki_ quit (Ping timeout: 260 seconds)
15:03:01*Hideki_ joined #nim
15:06:32FromGitter<deech> With `gc:arc` or `gc:destructors` should I expect clean `valgrind` runs? Currently it detects reachable memory at the end of the program.
15:19:29*Hideki_ quit (Remote host closed the connection)
15:21:01*Hideki_ joined #nim
15:22:11*Hideki_ quit (Remote host closed the connection)
15:22:26*Hideki_ joined #nim
15:23:01*u0_a121 joined #nim
15:28:19*marmotini_ joined #nim
15:30:10*NimBot joined #nim
15:31:00*shadowbane quit (Ping timeout: 256 seconds)
15:31:19*shadowbane joined #nim
15:31:34*acidx quit (Ping timeout: 256 seconds)
15:32:08*chemist69 quit (Ping timeout: 256 seconds)
15:32:28*gmpreussner_ joined #nim
15:32:32*chemist69 joined #nim
15:32:42*Lord_Nightmare quit (Ping timeout: 256 seconds)
15:32:48*tane joined #nim
15:33:05*ng0 joined #nim
15:33:08*junland_ joined #nim
15:33:16*junland quit (Ping timeout: 256 seconds)
15:33:18*acidx joined #nim
15:33:50*gmpreussner quit (Ping timeout: 256 seconds)
15:34:23*thomasross_ joined #nim
15:34:23*thomasross quit (Killed (orwell.freenode.net (Nickname regained by services)))
15:34:23*thomasross_ is now known as thomasross
15:35:02*letto_ joined #nim
15:35:32*Ven`` quit (Quit: Textual IRC Client: www.textualapp.com)
15:36:33*ng0_ quit (Ping timeout: 265 seconds)
15:37:19*Vladar joined #nim
15:37:48*letto quit (Ping timeout: 256 seconds)
15:37:49*Lord_Nightmare joined #nim
15:39:40*gmpreussner joined #nim
15:41:09*Trustable joined #nim
15:41:15*gmpreussner_ quit (Ping timeout: 272 seconds)
15:42:26*Hideki_ quit (Remote host closed the connection)
15:43:34*Hideki_ joined #nim
15:48:09*Hideki_ quit (Ping timeout: 265 seconds)
15:50:07*ng0 quit (Quit: leaving)
15:52:02*ng0 joined #nim
15:57:33*u0_a121 quit (Read error: Connection reset by peer)
16:06:29*thomasross is now known as Guest12384
16:06:29*thomasross_ joined #nim
16:06:29*Guest12384 quit (Killed (cherryh.freenode.net (Nickname regained by services)))
16:06:29*thomasross_ is now known as thomasross
16:08:09*Hideki_ joined #nim
16:09:51disruptekhearts and minds, people! hearts and minds!
16:12:55*Hideki_ quit (Ping timeout: 272 seconds)
16:14:01*marmotini_ quit (Remote host closed the connection)
16:15:16*marmotini_ joined #nim
16:15:35leorize@deech: if it's "still reachable" it's not a leak
16:15:41*Vladar quit (Quit: Leaving)
16:20:34Araqstefantalpalaru, dunno
16:20:48*greenfork joined #nim
16:20:54Araqimplicit imports are from hell
16:23:18*thomasross_ joined #nim
16:23:18*thomasross quit (Killed (wilhelm.freenode.net (Nickname regained by services)))
16:23:18*thomasross_ is now known as thomasross
16:25:42*abm joined #nim
16:35:07*u0_a121 joined #nim
16:37:44*u0_a121 quit (Read error: Connection reset by peer)
16:44:39*u0_a121 joined #nim
16:45:17*filcuc joined #nim
16:45:54*Hideki_ joined #nim
17:03:51*u0_a121 quit (Read error: Connection reset by peer)
17:05:43*Hideki_ quit (Ping timeout: 260 seconds)
17:10:59*m|b_ joined #nim
17:13:20*thomasross_ joined #nim
17:13:20*thomasross is now known as Guest67127
17:13:20*Guest67127 quit (Killed (niven.freenode.net (Nickname regained by services)))
17:13:20*thomasross_ is now known as thomasross
17:27:50*marmotini_ quit (Remote host closed the connection)
17:28:17dadadahttps://itsfoss.com/get-featured-on-its-foss/
17:28:43*marmotini_ joined #nim
17:28:53dadadamaybe Araq could be interviewed by them ... they seem to get a decent amount of traffic judging by the number of comments
17:29:31dadada"What do we cover?
17:29:33dadadaBasically, anything that interests our readers who are Linux and Open Source lovers."
17:30:43dadadas/Araq/Araq or other main contributors
17:31:46FromDiscord_<Recruit_main_70007> i havent seen the rest of the talks, but i really liked PMunch's one
17:32:29*thomasross_ joined #nim
17:32:29*thomasross is now known as Guest73169
17:32:29*Guest73169 quit (Killed (cherryh.freenode.net (Nickname regained by services)))
17:32:29*thomasross_ is now known as thomasross
17:39:41disruptekwhat's good about the stack?
17:41:22disrupteki'll take my answer off the air, i guess.
17:43:27dadadaI don't even understand your question
17:43:45*marmotini_ quit (Remote host closed the connection)
17:43:58dadadasoftware stack? stack vs heap? which stack?
17:44:09disruptekstack vs heap.
17:44:19*thomasross_ joined #nim
17:44:19*thomasross is now known as Guest21950
17:44:19*thomasross_ is now known as thomasross
17:44:47*Guest21950 quit (Ping timeout: 260 seconds)
17:45:27disrupteki'm only interested in semantics; pretend that i'm porting the concept of a stack to something that has no such concept.
17:45:36disruptekis it even worth porting? what's it good for?
17:45:41*u0_a121 joined #nim
17:46:39*marmotini_ joined #nim
17:46:59disruptekall i can come up with is exception unwinds.
17:51:47*u0_a121 quit (Read error: Connection reset by peer)
17:55:12*thomasross is now known as Guest91979
17:55:12*Guest91979 quit (Killed (livingstone.freenode.net (Nickname regained by services)))
17:55:30*al_ joined #nim
17:55:30*al_ is now known as Guest94576
17:57:49Zevvsow how are the floats coming along disruptek
17:58:02Zevvnice mess you got yourself in promising to fix taht
17:58:07*thomasross_ joined #nim
17:58:07*thomasross_ is now known as thomasross
17:58:27disruptekit's lovely.
17:58:34Zevvare you planning to do a 1-to-1 port from C, or are you actually going to understand all the details?
17:58:53disruptek1-to-1 first. there are a lot of subtleties iirc.
17:59:12disrupteki'm really curious if we can outperform c, too.
17:59:31Zevvyeah. My guess would be to first port the tests to nim and hook al the c code. then replace the c functions bottom up by nim, one by one
17:59:38disrupteklike, i think we could figure out at compile-time whether we'll need to include some of the larger tables. and we can generate them during compilation, of course.
18:00:00Zevvbut I think these tables require bigint to generate
18:00:08Zevvwhich we dont have
18:00:17disrupteki'm doing the tests first, sure, but it's easy to just rewrite the c into nim. i'm about halfway done f2s i think.
18:00:34Zevvshr shl and or not
18:00:46disruptekwe have 128bit in the compiler. should be okay.
18:01:09Zevvbut since performance was the goal of the c impl, I would not hope too much about outperforming that
18:01:21Zevvbut yeah, one can always try
18:01:53disrupteki'm using "performance" to mean the net utility of the module.
18:02:12disrupteki think we can make it easier to use, easier to understand, etc.
18:02:14Zevvthe go implementation is a bit more readable then the c version btw
18:02:29disruptekyeah, but it doesn't port as naively.
18:02:35Zevvnot much to use. f2str and d2str is about the whole API
18:03:01disruptekthere are some architecture things we'll want to figure out.
18:03:39disruptekalso, i know the c version is a little polished versus the paper, so i wanted to start there.
18:03:40Zevvalso it would be cool if this would not be the one and only implemetation in nim to do this, id like to be able to fall back to the libc implementation as well
18:03:45Zevvfor size reasons
18:04:04Zevvhow "polished"?
18:04:08disruptekyeah, that should be trivial. also, there's a size flag you can define to skip the larger tables, etc.
18:04:11*Hideki_ joined #nim
18:04:57disrupteki'm not aware of bugs in the paper but it's a pretty naive algo there, correct as it may be.
18:05:24Zevvah right. no papers just lie, always use the implementation. it is there for a reason
18:05:58disruptekwell, maybe not a lie per se, but glosses over details that can matter in practice.
18:06:06disruptekread: performance
18:07:23Zevvexactly
18:08:35*Hideki_ quit (Ping timeout: 260 seconds)
18:10:12disruptekwhen i was trying to use ml for realtime trading, it was a c# runtime and my code was python.
18:10:30disruptekthe overhead was all in f2s, basically.
18:10:53disruptekthere wasn't a c# ryu port then, but i'm not even sure i coulda used it if there was.
18:11:20Zevvyou should just precalculate and hash all double floats at compile time
18:11:28Zevvfor performance, you know
18:11:49disruptekbut anyway, that's when i got interested in ryu. and trying to hack the python<->c# interop is what got be interested in graal, which made me eventually throw it all out and start searching for nim.
18:12:14Zevvand here we are
18:12:42disrupteksomething like that. 😁
18:13:34FromGitter<deech> How do you pass `-d:whatever` flags to the compiler via `nimble`? I tried `nimble ... -d:whatever` with a `when defined(whatever)` flag in the `nimble` file to test but it didnt' work.
18:14:50disruptekdeech: this is the closest i've come to doing that: https://github.com/disruptek/nimph/blob/master/bootstrap.sh#L12
18:14:57disruptekmaybe it helps.
18:18:13FromGitter<deech> Interesting, don't see `passNim` documented anywhere, it didn't work but it's a starting point. Thanks!
18:18:48disruptekyou tried `nimble build -- -d:some -d:options -d:here`?
18:20:02FromGitter<deech> Just tried it with `nimble test -- -d:...` but it didnt' work.
18:20:11FromGitter<deech> I don't have a `build` task.
18:20:28disruptekare you sure you don't want to put this define into a something.nim.cfg file?
18:21:16FromGitter<deech> Maybe, it's a custom flag I want to pass to the build.
18:22:12FromGitter<deech> I'm working on a binding and want a bundled flag will tell the build process to download and compile it locally.
18:23:32FromGitter<deech> I can always manually parse out the command line options but it's kind of a meh option.
18:24:01disrupteki use nimph.nim.cfg for that.
18:24:34disruptekhttps://github.com/disruptek/nimph/blob/master/src/nimph.nim.cfg#L21
18:24:52disruptekymmv 😉
18:25:01shashlickThat works with build not test
18:25:07shashlickUse a cfg file for tests
18:25:39disrupteki'm moving away from cfg files for tests, as i don't want a nim.cfg anywhere (for pm reasons) and i don't want to write a .cfg for every test input.
18:25:54FromGitter<deech> Will a `.cfg` flag setting in a dependency trickle down or do you have to live with one version of the build per install.
18:26:09disruptekwhat?
18:26:26*marmotini_ quit (Remote host closed the connection)
18:27:09disrupteki dunno how nimble works. nimph's local deps trickle down by default but can be overridden in the dependencies.
18:27:26FromGitter<deech> So like if I depended on `nimph` as a library and I defined, idk, `gitErrorsAreFatal` in the dependency's `.cfg` file is there a way to get `nimph` to build with that toggled.
18:27:43FromGitter<deech> Yeah ok, `nimph` souunds nicer.
18:28:12disruptekwell, if you use nimph with global deps, you'll get more nimble-like behavior, i guess.
18:28:54disruptekie. assuming that the deps aren't below the app itself. nimph's behavior is down to the nim compiler; whatever it enables, nimph enables.
18:30:16disruptekbtw, you /can/ use local deps with nimble. it's just a little more work. but the nimph bootstrap shows you how to do that.
18:31:11shashlickJust put the cfg in the tests dir
18:32:17shashlickIt will only apply to binaries in that directory
18:32:30disruptekleorize: why does NimTypeOf move my cursor?
18:32:55shashlickAnd if you have a test.nim.cfg it will be used only for that test
18:33:59shashlickAlternatively just create a single test which calls your real tests with whatever flags in code
18:34:19shashlickOr write a custom task in nimble
18:42:46*Hideki_ joined #nim
18:46:02*abm quit (Ping timeout: 240 seconds)
18:46:42*Kaivo joined #nim
18:46:47*Hideki_ quit (Ping timeout: 240 seconds)
18:47:43*opal quit (Ping timeout: 240 seconds)
18:47:59rayman22201@Zevv @disruptek what is Ryu? What madness are you up to today? Lol
18:48:00*opal joined #nim
18:49:06disrupteki think the needed-libraries thread might like to a talk or two. fun to watch.
19:02:41Araqis it too late to give 'nimph' a better name?
19:02:51disruptekwhat do you have in mind?
19:03:35Araqnismart
19:03:55disrupteko.O
19:04:20rayman22201Shop smart, shop S Mart 😝
19:04:50narimiranN is m-art
19:04:58disrupteky'know, nimph sounds like `nimf`. not `nim pee aiche`.
19:05:16*Guest94576 quit (Quit: Guest94576)
19:05:37Araqwhat does 'nimf' mean?
19:06:00shashlickAraq - most of your must haves are done on choosenim
19:06:16shashlickCan you please check and see what remains
19:06:17FromDiscord_<Recruit_main_70007> important question, are dll imports broken in windows??
19:06:17shashlickCan you please check and see what remains
19:06:27FromGitter<zetashift> nimf is slang for nymphy!?
19:06:30disrupteknymph: n 1: (classical mythology) a minor nature goddess usually depicted as a beautiful maiden; "the ancient Greeks believed that nymphs inhabited forests and bodies of water"
19:06:31FromGitter<zetashift> nympho*
19:06:39FromDiscord_<Recruit_main_70007> the rosetta code example doesnt work
19:06:54FromGitter<zetashift> link?
19:06:57disruptek2: a larva of an insect with incomplete metamorphosis (as the dragonfly or mayfly)
19:07:02FromDiscord_<Recruit_main_70007> https://rosettacode.org/wiki/Call_a_function_in_a_shared_library#Nim
19:07:04disruptek3: a voluptuously beautiful young woman [syn: {nymph}, {houri}]
19:07:31FromDiscord_<Recruit_main_70007> i obv change .so to .dll
19:08:15Araqdisruptek, ah thanks for the explanation
19:08:20Araqtoo subtle for me
19:08:30Araqbut now I can see the name's point
19:08:40disruptekyeah, i thought it might help.
19:08:46AraqRecruit_main_7007: no, they are not.
19:08:48Araqshashlick, ok ...
19:10:31FromGitter<zetashift> What's the error you get?
19:10:46FromGitter<zetashift> and don't you have to specify the dll with a compiler switch?
19:10:54FromDiscord_<Recruit_main_70007> araq, then whats happening? im sorry, this is probably an stupid error, but i just cant see it
19:12:12FromGitter<zetashift> Recruit_main_70007 what's the error :O?
19:12:13shashlickShare some snippet for us to check
19:12:35FromDiscord_<Recruit_main_70007> could not load xxx.dll
19:12:59shashlickSo are you on windows or Linux
19:13:33FromGitter<zetashift> He was on windows
19:13:50shashlickCheck the arch
19:14:23shashlick32bit vs 64bit
19:15:08FromDiscord_<Recruit_main_70007> how?
19:15:08FromDiscord_<Recruit_main_70007> and how can i set it when compiling?
19:15:13*ng0_ joined #nim
19:15:13*u0_a121 joined #nim
19:16:21shashlicknim -v
19:16:29Araqshashlick, very nice, only one point from my wishlist remains:
19:16:36Araqhttps://github.com/dom96/choosenim/issues/12
19:16:36disbotChange the way update works
19:16:52Araqand it's only 3 years old
19:17:02shashlickOk sounds fair
19:17:13shashlickI was planning on adding nightlies support too
19:17:15Araqit's not that important but I do wonder
19:17:38*ng0 quit (Ping timeout: 246 seconds)
19:17:40Araqif choosenim is Nim's official installer, how come it's dom96/choosenim?
19:18:25FromGitter<zetashift> historic reasons?
19:18:32FromDiscord_<Recruit_main_70007> Windows: i386
19:19:28shashlickTime to move it?
19:19:46shashlickRecruit: check the dll arch as well
19:19:50FromGitter<zetashift> and the dll arch Recruit_main_70007?
19:20:16FromDiscord_<Recruit_main_70007> same
19:20:37Araqshashlick, I'm a very resentful guy
19:21:04Araqback then I didn't ask for yet-another-way to install Nim. it's a nightmare for QA
19:21:33Araqand the involved people could also have improved Nimble instead
19:21:49Araqso for now we leave it as dom96/choosenim
19:22:28AraqI'm grateful you improve it but at the same time Nimble needs our love moreso
19:22:38shashlickOk I'm not particularly opinionated so don't mind standing on shoulders to make life better for the community
19:22:55Araqwell it works and now it works better
19:23:11shashlickI've been transitioning out of choosenim and onto nimble in my round Robin
19:23:34Araqso ... how do we get a new choosenim release out ?
19:23:36shashlickSo I can continue with some more choosenim improvements or move on
19:24:17FromGitter<zetashift> is the dll in the same folder?
19:24:24shashlickJust need to update the version and tag
19:24:24shashlickCI builds it for us
19:24:26shashlickDom96 then updates nimlang website etc
19:24:30shashlickChange log as well
19:25:11Araqok, so I don't have to do anything
19:26:12shashlickYes it is quite easy
19:26:23shashlickI don't have site access else could do that too
19:26:59*abm joined #nim
19:27:11FromGitter<zetashift> Was the original plan to let nimble also be the installer of Nim?
19:27:15shashlickI have a big nimterop backlog since I'm updating it to use the compiler AST and renderer
19:27:38shashlickBut it's not easy so I'm slacking on that
19:30:06*greenfork quit (Remote host closed the connection)
19:30:10*m|b_ quit (Quit: Connection closed for inactivity)
19:30:42Araqzetashift: no, definitely not.
19:30:49FromGitter<kristianmandrup> What is the best way to experiment with changes to Nim itself?
19:30:58FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e405df237545d247d2c5beb]
19:31:20Yardanicoclone the repo locally
19:31:21FromGitter<kristianmandrup> Trying to run the Nim test suite (branches of from most recent `master`)
19:31:44Yardanicoclone nim repo, run build_all.sh, and add repo/bin directory to PATH
19:32:03FromGitter<kristianmandrup> yes, I see now
19:32:05FromGitter<kristianmandrup> Assuming that you added Nim's ``bin`` directory to your PATH, you may execute ⏎ the tests using ``./koch tests``. The tests take a while to run, but you ⏎ can run a subset of tests by specifying a category (for example ⏎ ``./koch tests cat async``). [https://gitter.im/nim-lang/Nim?at=5e405e35cd2d737bb069c080]
19:32:51Yardanicoyeah, usually you just test tests which may be affected by your change, we still have a CI after all
19:34:01FromGitter<kristianmandrup> So, sth like: `export NIM_BIN=/Users/kristianmandrup/repos/nim-projects/Nim/bin` then add `NIM_BIN` to my PATH?
19:34:08*lritter joined #nim
19:34:26Yardanicowell, or just add that dir to your $PATH
19:34:32Yardanicowithout additional variables :)
19:34:33*natrys quit (Quit: natrys)
19:34:40FromGitter<kristianmandrup> `export PATH=$NIM_BIN:$PATH
19:34:51FromGitter<kristianmandrup> Sure, I like to try and keep it tidy
19:35:12Yardanicoyeah, but make sure it doesn't conflict with nim installed from choosenim or a package manager
19:35:32FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e405f04cd2d737bb069c1f4]
19:35:49FromGitter<kristianmandrup> `Nim/lib/system.nim(207, 11) Error: undeclared identifier: 'is'` ??
19:36:10Araqkristianmandrup: don't use 'master'
19:36:15FromGitter<kristianmandrup> I ran `./build_all.sh` just before
19:36:19Araqnot sure why it's still a thing, master is dead
19:36:20FromGitter<kristianmandrup> oh?
19:36:24FromGitter<kristianmandrup> damn
19:36:31Yardanicothe default branch is devel anyway
19:36:32FromGitter<kristianmandrup> which branch then? `develop`?
19:36:36FromGitter<kristianmandrup> okay
19:39:12shashlickUse choosenim, can set it to a release version or pick a local git dir
19:39:17shashlickSo you can go back and forth
19:39:18FromGitter<kristianmandrup> How best to run `build_all` I tried with sudo, then used chmod, but that made modifications to file detected by git
19:39:29Yardanicowdym?
19:39:34Yardanicojust sh build_all.sh should do the job
19:39:38disruptekdon't overthink it.
19:39:47Yardanicoit won't change git-tracked files
19:39:53FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40600937545d247d2c60bc]
19:40:18Yardanicosh build_all.sh ?
19:40:25FromGitter<kristianmandrup> what would be the `choosenim` command now that I have set `$NIM_BIN`?
19:40:39FromGitter<kristianmandrup> and is in `$PATH`
19:40:58FromGitter<kristianmandrup> or simply `$ choosenim .` perhaps
19:41:33FromGitter<kristianmandrup> ``` choosenim ~/projects/nim ⏎ Selects the specified Nim installation.``` [https://gitter.im/nim-lang/Nim?at=5e40606dd4daaa26c192d282]
19:41:36FromGitter<kristianmandrup> I would think"
19:42:57FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4060c1ecfa4461c04dbde3]
19:43:18FromGitter<kristianmandrup> ```choosenim $NIM_HOME ⏎ Switched to Nim (/Users/kristianmandrup/repos/nim-projects/Nim)``` [https://gitter.im/nim-lang/Nim?at=5e4060d6d4daaa26c192d2e0]
19:43:21FromGitter<kristianmandrup> Sweet :)
19:43:53shashlickJust set ~/.nimble/bin to your path and use choosenim to set active Nim
19:43:58shashlickRest is taken care of
19:44:10disrupteki pity the fool.
19:44:16*Zectbumo joined #nim
19:44:20shashlickWhy sit and mess around with path
19:44:27FromGitter<kristianmandrup> okay, but works now
19:44:31disruptekwhen you get tired of this shit, just git clone Nim and move on with your life.
19:44:31FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40611f1d23aa47aa042da8]
19:45:17shashlickThat works if you live in devel
19:45:34FromGitter<kristianmandrup> yes, working from my own clone
19:45:36shashlickBut when you start testing 20 Nim versions, choosenim works
19:46:18shashlickAnd that makes sense when you start working on libraries
19:47:05FromGitter<kristianmandrup> Just ran koch tests on devel
19:47:07FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4061bbc900d747abf4f5bf]
19:47:30Yardanicowell devel is devel for a reason - it can break :P
19:47:39Yardanicoalthough last commit's CI is green
19:48:00FromGitter<kristianmandrup> pulled latest from Nim, same problem
19:49:11FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4062371d23aa47aa042fd0]
19:49:46Yardanicohttps://github.com/nim-lang/Nim/runs/434535937
19:50:00Yardanicoand https://github.com/nim-lang/Nim/runs/434537825
19:51:13FromGitter<kristianmandrup> no worries, I can just run particular test - I 'd like to test `jsgen` for my case/changes
19:52:02FromGitter<kristianmandrup> I can see there is a `tests/js` folder :)
19:52:55FromGitter<kristianmandrup> test categories?
19:53:26FromGitter<kristianmandrup> "you can run a subset of tests by specifying a category (for example``./koch tests cat async``).`"
19:54:12FromGitter<kristianmandrup> This ⏎ command will compile and run ``testament/tester.nim``, which is the main ⏎ driver of Nim's test suite. You can pass options to the ``test`` command, ⏎ they will be forwarded to the tester. [https://gitter.im/nim-lang/Nim?at=5e406364ecfa4461c04dc3e7]
19:55:01FromGitter<kristianmandrup> No such file `testament/tester.nim` at this point :P
19:55:32FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4063b345000661fcae7963]
19:56:05FromGitter<kristianmandrup> `./koch tests cat js` seems to run all the tests though
19:57:23FromGitter<kristianmandrup> Been renamed to `testament/testament` clearly ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40642345000661fcae7aec]
19:58:24Yardanicodid you do "sh build_all.sh" before trying the tests though? and does nim --version output 1.1.1 ?
20:02:51FromGitter<kristianmandrup> Building now... meanwhile `nim --version` gives me `0.20`
20:02:56Yardanicowell that's not right
20:03:16Yardanicotry "which nim"
20:07:02FromGitter<kristianmandrup> ```$ which nim ⏎ /Users/kristianmandrup/repos/nim-projects/Nim/bin/nim``` [https://gitter.im/nim-lang/Nim?at=5e4066661d23aa47aa0439f3]
20:07:16FromGitter<kristianmandrup> Yeah, the 0.20 was my old "direct" install last summer.
20:07:47disruptekare we having fun yet?
20:07:56FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40669c1d23aa47aa043a6c]
20:08:06FromGitter<kristianmandrup> @disruptek - For sure :)
20:09:20*nsf quit (Quit: WeeChat 2.7)
20:10:02FromGitter<kristianmandrup> But I should have to build the whole thing for every code change in Nim, right?
20:10:21FromGitter<kristianmandrup> Running all the `js` category tests now :)
20:10:37FromGitter<kristianmandrup> `Used /Users/kristianmandrup/repos/nim-projects/Nim/bin/nim to run the tests. Use --nim to override.` Interesting :)
20:11:53YardanicoWell, you need to recompile the compiler if you do a compiler change, but it's quite fast with debug mode
20:12:42FromGitter<kristianmandrup> how do I recompile the compiler efficiently then?
20:12:47YardanicoSo maybe you would want to test your change on some single file with koch temp c , and then after you're sure it works as you intended, run the tests
20:12:50FromGitter<kristianmandrup> ```var v {.codegenDecl: "console.log(-1); var $2".} = 2 ⏎ echo v``` [https://gitter.im/nim-lang/Nim?at=5e4067c2f3718e705df149ad]
20:13:24FromGitter<kristianmandrup> I see the following. Never seen `codegenDecl` pragma before. Been looking for a way to "steer" output of var declaration to target
20:15:10Zevvrayman22201: ryu is a fast float-to-string algo
20:15:35Zevvthere was this guy who thought to himself "Well, the whole world has been optimizing this for 30 years, let me see if I can do better though"
20:15:43Zevvspoiler: he could
20:17:35disrupteki mean, in fairness, he couldn't really find much evidence of anyone really trying to optimize it, iirc.
20:17:35FromGitter<kristianmandrup> how to I run a single Nim test using koch?
20:20:50rayman22201@zevv fascinating. Thanks 😊
20:22:40FromGitter<kristianmandrup> So I made a minute change in Nim `gen` proc, simply echoing the incoming options
20:23:03FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e406a263716b919ba0a4b5b]
20:23:30FromGitter<kristianmandrup> How do I now ensure this takes effect when I run on mu sandbox example, without rebuilding all of Nim?
20:23:52FromGitter<kristianmandrup> `var x = 2`
20:24:00FromGitter<kristianmandrup> `nim js sandbox/try.nim`
20:25:34FromGitter<kristianmandrup> or does it do incremental builds?
20:26:07disruptek./koch boot -d:danger
20:26:54FromGitter<kristianmandrup> I just tried `build_all` again - builds all from scratch
20:27:59FromDiscord_<clyybber> sup
20:28:12FromGitter<kristianmandrup> ` ./koch boot -d:danger` also seems to build the whole thing :O
20:30:01disruptekoh, i didn't realize you only wanted half a compiler.
20:30:09disrupteksup clyybber
20:30:36FromDiscord_<clyybber> yo dawg, heard you writin ryu?
20:30:57disruptekit has a bug.
20:31:04FromDiscord_<clyybber> oh
20:31:17FromDiscord_<clyybber> nice, I am in the right mood for a hunt
20:31:40Yardanico@kristianmandrup you don't need -d:danger here though since it's for debugging. And also it "builds" the whole thing in Nim and then only recompiles C files which changed
20:31:44FromDiscord_<clyybber> since my tomorrow exam got cancelled due to storm :p
20:32:00Yardanico./koch temp js file.nim
20:37:08FromGitter<kristianmandrup> @Yaranico OK :)
20:38:02FromGitter<kristianmandrup> Anyone have any ideas how/where I can set `options` on `PProc` in Nim?
20:38:24FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e406dc03716b919ba0a5278]
20:38:34FromGitter<kristianmandrup> Currently empty options
20:39:05FromGitter<kristianmandrup> ```Error: arguments can only be given if the '--run' option is selected ⏎ ``` [https://gitter.im/nim-lang/Nim?at=5e406de9ecfa4461c04ddbf4]
20:39:54FromDiscord_<clyybber> disruptek: Whats the bug?
20:39:57FromDiscord_<clyybber> ~motd
20:39:58disbotmotd: 11janet versus fennel... fight!
20:40:29FromGitter<kristianmandrup> `nim js --d:nodejs sandbox/try.nim` options also empty `{}`
20:40:35disruptekthe bug is... it doesn't work.
20:40:47FromDiscord_<clyybber> ah
20:40:57FromDiscord_<clyybber> how did you translate it?
20:41:00FromDiscord_<clyybber> or did you wrap it?
20:41:08disruptekwith my magic hands.
20:41:19FromDiscord_<clyybber> nice
20:41:26FromDiscord_<clyybber> im gonna clone it and see what i can do
20:41:26*xet7 quit (Read error: Connection reset by peer)
20:41:58*xet7 joined #nim
20:42:01disruptekkk, thanks. i'm just looking f2s over now to see if there's anything obvious.
20:42:18*xet7 quit (Read error: Connection reset by peer)
20:42:23FromGitter<kristianmandrup> Anyone knows the entry point for the Nim js compiler?
20:42:47*xet7 joined #nim
20:42:49FromDiscord_<clyybber> disruptek: Is it really just 97 lines?
20:43:04FromDiscord_<clyybber> or is master outdated?
20:43:41FromGitter<kristianmandrup> only `template config*(p: PProc): ConfigRef = p.module.config` is exported in `jsgen.nim` ?
20:43:43FromGitter<kristianmandrup> And `const JSgenPass* = makePass(myOpen, myProcess, myClose)`
20:43:46disrupteksee f2s branch
20:44:01FromDiscord_<clyybber> aight
20:44:06disruptekoh, i forgot to commit it.
20:44:18disruptekptal now
20:45:15FromDiscord_<clyybber> weird
20:45:26FromDiscord_<clyybber> I'm getting "cannot open file: ryu/common"
20:45:42FromDiscord_<clyybber> argh
20:45:45FromDiscord_<clyybber> u depend on nimble
20:45:48disruptekecho '--path="$config"' > nim.cfg
20:46:01FromDiscord_<clyybber> aight
20:46:10disruptekblame shashlick
20:46:34FromDiscord_<clyybber> **blame**
20:47:11FromDiscord_<clyybber> hey, it compiles
20:47:44FromDiscord_<clyybber> when I run it in changes my path
20:47:46FromDiscord_<clyybber> lol
20:47:52FromDiscord_<clyybber> eh, not my path
20:47:55FromDiscord_<clyybber> my CWD
20:48:12FromGitter<kristianmandrup> Anyone knows how I can print or debug what is in `graph` here? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40700c63c15921f46bf23c]
20:48:12disruptekunlikely.
20:48:13shashlickWhat did i do now
20:48:26disruptekshashlick: you made it too easy to use travis.
20:48:34FromDiscord_<clyybber> shame
20:48:37FromGitter<kristianmandrup> `conf` does not have an echo, obviously
20:48:58krux02Do you have a way to download the CI logs to the local machine that doesn't require a browser?
20:49:03shashlickBTW that Travis script, you need to update the link
20:49:11disruptekPRs accepted
20:49:27shashlickYou are pointing to a specific commit instead of the latest gist
20:49:33shashlickWhere all are you using it
20:49:36FromDiscord_<clyybber> krux02: Is probably possible for sourcehut
20:49:41disrupteki'm a wildman
20:49:48FromDiscord_<clyybber> They have a pretty extensive documentation
20:50:05disruptekkrux02: tell me what you want. i have a ticket to add such a feature to nimph.
20:50:29disruptekpersonally, i just want to dump the log in my console.
20:50:53krux02disruptek, well ultimatively I want to work browserless
20:51:12*thomasross_ joined #nim
20:51:12*thomasross is now known as Guest10586
20:51:12disruptekshashlick: i was just being a dick. gimme a url and i'll fix things.
20:51:12*Guest10586 quit (Killed (weber.freenode.net (Nickname regained by services)))
20:51:12*thomasross_ is now known as thomasross
20:51:16krux02meaning the browser is only for reading documentation
20:51:20disruptekkrux02: of course.
20:51:35krux02but answering issues, dealing with PR etc should work all locally.
20:51:43disruptekif you are happy with console dumps, i can help with that.
20:51:46FromDiscord_<sveri> Hi, it's me again trying to get a multi threaded server running together with async.
20:51:46FromDiscord_<sveri> While I can manage to start multiple servers in threads, whenever I run requests against it, only one server responds.
20:51:46FromDiscord_<sveri> This is the code as short as possible: https://pastebin.com/kQegWEjt
20:51:46FromDiscord_<sveri> you can see the proc that creates the server does that in different threads, while the callback proc always runs in the same thread. Any idea why that is?
20:51:55shashlickhttps://gist.github.com/genotrance/fb53504a4fba88bc5201d3783df5c522/raw/travis.sh
20:52:19FromDiscord_<clyybber> krux02: Too late, work on ryu has started :p
20:52:51*marmotini_ joined #nim
20:52:56krux02clyybber: I am not againt a port of ryu
20:53:06krux02I just don't really see the need to maintain it in the compiler.
20:53:23disruptekagree.
20:53:37FromDiscord_<Recruit_main_70007> ok, i fixed it, i was using a choosenim i had, now it works, thank you!
20:53:46FromDiscord_<clyybber> krux02: Maybe we can start making the compiler depend on "outer" packages
20:53:51*marmotini_ quit (Remote host closed the connection)
20:54:00krux02well my PR to increase the precision of floating point numbers when printed got reverted quickly.
20:54:12FromDiscord_<clyybber> yeah
20:54:32FromDiscord_<clyybber> with ryu we can be less verbose but still precise enough
20:54:43krux02yea
20:54:55krux02I think it is a pointless battle here.
20:55:06krux02I am just telling my opinion here.
20:55:07*marmotini_ joined #nim
20:55:28FromDiscord_<clyybber> sure, your opinion is valued
20:55:45krux02And since I don't get money anymore to work on Nim, I am not implementing solutions anymore that I don't agree on.
20:56:00FromDiscord_<clyybber> understandable
20:56:04FromGitter<kristianmandrup> What is best way to add extra options here?
20:56:07FromGitter<kristianmandrup> ```var p = newProc(oldProc.g, oldProc.module, prc.ast, prc.options)```
20:56:29FromGitter<kristianmandrup> I think it is some kind of set operation?
20:56:36FromDiscord_<clyybber> krux02: Btw, are you working at some university?
20:56:47FromGitter<kristianmandrup> `TOptions* = set[TOption]`
20:56:51krux02clyybber: no I don't
20:57:00krux02I am currently working only on my own project.
20:57:10FromDiscord_<clyybber> oh, what is it?
20:57:11krux02Doesn't produce money though.
20:57:31shashlicksveri asyncCheck not waitFor
20:57:52FromGitter<kristianmandrup> https://nim-lang.org/docs/sets.html
20:58:04krux02Well it is a project with a friend from Aachen, he had this idea for funding OpenSource projects.
20:58:04shashlickWell maybe not
20:58:16FromDiscord_<clyybber> openselery?
20:58:20krux02yes
20:58:29krux02it is very rough yet.
20:58:35FromDiscord_<clyybber> openselery?
20:58:41krux02yes
20:58:43FromDiscord_<clyybber> nice name, I like sellerie
20:58:50disruptekopenselery?
20:59:10krux02yea the name was picked because it was still free, and I like the pun
20:59:20FromDiscord_<sveri> shashlick: then the program ends instantly
20:59:39krux02most open source projects have shitty names that nobody can remember. That one is easy to remember because of the pun
20:59:58disruptekahh, like oliver.
21:00:03shashlickYa that's not right
21:00:12FromDiscord_<clyybber> krux02: btw, has the storm hit you yet?
21:00:21FromGitter<kristianmandrup> Have yet to find a good Nim tutorial on sets
21:00:34krux02clyybber: Well kind of.
21:00:41krux02I had higher expectations.
21:00:54FromDiscord_<clyybber> damnit
21:00:59FromDiscord_<clyybber> i was begging for havoc
21:01:01krux02I stayed home because of the storm, and then it was just very windy
21:01:21krux02but it was nice to get fresh air in my living room.
21:01:25FromDiscord_<clyybber> haha
21:02:36krux02Does anyone from you have a job offer for me?
21:03:03FromGitter<kristianmandrup> Is this valid `var p = newProc(oldProc.g, oldProc.module, prc.ast, prc.options + {optSections)`
21:03:18krux02I would like to get payed to develop in Nim. but I can also do Go, Scala, C++, emacs-lisp (:P) etc
21:03:24FromGitter<kristianmandrup> if `optSections` is part of `TOption` for set[TOptions]
21:04:22FromDiscord_<clyybber> krux02: maybe status is hiring
21:04:42FromDiscord_<clyybber> (i don't know if they are, but they are the first thing that comes to mind for nim jobs)
21:05:26FromGitter<kristianmandrup> `prc.options + optSections` ?? where `options*: TOptions` and `TOption` contains ` optSections` as a flag/option
21:05:30krux02kristianmandrup: a set in Nim is basically just an array of bits. And ~{0,1,7}~ means noting more than bit 0, 1 and 7 are one, the rest is zero.
21:06:18FromGitter<kristianmandrup> so how do I add a bit to it? normally would just be + then
21:06:32FromGitter<kristianmandrup> bit flag, like xor in the old days I believe
21:06:39krux02there is `incl` proc for it
21:07:08krux02I think you can just add two sets togething with +
21:07:46krux02there is also the `*` operator which does a bitwise multiplication if that makes senes.
21:07:48FromGitter<kristianmandrup> I get `undeclared identifier`
21:07:56FromDiscord_<clyybber> krux02: I think instead of changing stringification procs to take `var string`, we should do views/lent slices
21:08:01krux02myset.incl myFlag
21:08:08FromDiscord_<clyybber> that should get rid of the unneccessary copying afaict
21:08:19FromGitter<kristianmandrup> So I need to import `TOptions` or `TOption` somehow?
21:08:38disruptek* for sets does intersection.
21:08:45krux02sets in nim are a typesafe version of the flags in C.
21:09:11FromGitter<kristianmandrup> In `ast.nim` `options*: TOptions` is exported
21:09:21krux02you don't need to manually bitshift anymore etc
21:09:22FromDiscord_<clyybber> kristianmandrup: You can also do someSet + {someElem} I think
21:10:51krux02no you don't need to import TOption or TOptions
21:11:07krux02you need to import the module, then you have everything from the module in scope.
21:11:50krux02clyybber: what do you mean with views/lent slices? How does that help?
21:12:08FromDiscord_<clyybber> disruptek: Something is eating the stacktraces, I don't see where it the oob errors come from
21:12:19FromGitter<kristianmandrup> turned out there were multiple `TOption` type defs. Added it to wrong one
21:12:41krux02kristian: what are you working on?
21:12:47FromDiscord_<clyybber> krux02: I mean, if we can alias/borrow slices of strings instead of copying
21:13:08FromDiscord_<clyybber> I think hes working on javascript emit improvements? right?
21:15:16FromGitter<kristianmandrup> @FromDiscord - Exactly
21:15:47FromGitter<kristianmandrup> Got it working :) ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e407683ecfa4461c04debba]
21:16:16*Hideki_ joined #nim
21:17:37*ng0 joined #nim
21:17:52disruptekclyybber: gonna put the table tests in; i found a couple bugs already.
21:18:37FromDiscord_<clyybber> aight
21:18:41krux02clyybber: I don't understand how slices would improve anything here. Slices are more for reading and modifying data, not for appending data with potentional reallocation.
21:19:23FromGitter<kristianmandrup> But I think should be in `genModule`
21:19:24krux02if you use `stream` instead of `var string` you can even get rid of all intermediate string allocations.
21:19:27FromGitter<kristianmandrup> ```proc genModule(p: PProc, n: PNode) = ⏎ var opts = prc.options + {optSections}``` [https://gitter.im/nim-lang/Nim?at=5e40775f19597421f3bc039a]
21:20:26*ng0_ quit (Ping timeout: 240 seconds)
21:20:27*Hideki_ quit (Ping timeout: 240 seconds)
21:20:50*marmotini_ quit (Remote host closed the connection)
21:21:24FromGitter<kristianmandrup> Is there a better way?
21:21:24*marmotini_ joined #nim
21:21:27FromGitter<kristianmandrup> ```proc genModule(p: PProc, n: PNode) = ⏎ p.prc.options = p.prc.options + {optSections}``` [https://gitter.im/nim-lang/Nim?at=5e4077d737545d247d2c925e]
21:21:45*Kaivo quit (Quit: WeeChat 2.7)
21:22:09krux02p.prc.options.incl optSections
21:24:05FromGitter<kristianmandrup> yeah, I get illegal storage attempt - since it is a const?
21:24:14FromGitter<kristianmandrup> `SIGSEGV: Illegal storage access. (Attempt to read from nil?)`
21:24:24FromGitter<krux02> that is weird
21:24:46*ikan-keli_ quit (*.net *.split)
21:24:48*zedeus quit (*.net *.split)
21:24:52*lmariscal06 quit (*.net *.split)
21:24:52*jken quit (*.net *.split)
21:24:52*Mister_Magister quit (*.net *.split)
21:24:52*federico3 quit (*.net *.split)
21:24:52*so quit (*.net *.split)
21:25:43*ikan-keli_ joined #nim
21:25:43*zedeus joined #nim
21:25:43*lmariscal06 joined #nim
21:25:43*jken joined #nim
21:25:43*Mister_Magister joined #nim
21:25:43*federico3 joined #nim
21:25:43*so joined #nim
21:26:02*marmotini_ quit (Ping timeout: 240 seconds)
21:26:30*so quit (Max SendQ exceeded)
21:26:43*so joined #nim
21:27:50krux02when I get segfault, I run the compiler in a debugger
21:28:04krux02koch temp
21:28:31krux02nim-gdb --args nim_temp c ...
21:29:00*narimiran quit (Ping timeout: 268 seconds)
21:29:51*lritter quit (*.net *.split)
21:29:52*pigmej quit (*.net *.split)
21:29:54*zielmicha__ quit (*.net *.split)
21:29:54*l1x quit (*.net *.split)
21:29:54*r4vi quit (*.net *.split)
21:29:55*ljoonal quit (*.net *.split)
21:29:55*nisstyre quit (*.net *.split)
21:29:55*vqrs quit (*.net *.split)
21:29:56*lkw quit (*.net *.split)
21:29:57*stefantalpalaru quit (*.net *.split)
21:29:57*JStoker quit (*.net *.split)
21:29:58*s87651[m] quit (*.net *.split)
21:29:58*oswin[m] quit (*.net *.split)
21:29:58*watzon[m] quit (*.net *.split)
21:29:58*grantmwilliams quit (*.net *.split)
21:29:59*GitterIntegratio quit (*.net *.split)
21:29:59*Yardanico quit (*.net *.split)
21:30:00*MD87 quit (*.net *.split)
21:30:01*jwm224 quit (*.net *.split)
21:30:02*skelett quit (*.net *.split)
21:30:03*hohlerde quit (*.net *.split)
21:30:30*lritter joined #nim
21:30:30*watzon[m] joined #nim
21:30:30*oswin[m] joined #nim
21:30:30*s87651[m] joined #nim
21:30:30*hohlerde joined #nim
21:30:30*pigmej joined #nim
21:30:30*grantmwilliams joined #nim
21:30:30*GitterIntegratio joined #nim
21:30:30*Yardanico joined #nim
21:30:30*MD87 joined #nim
21:30:30*zielmicha__ joined #nim
21:30:30*l1x joined #nim
21:30:30*skelett joined #nim
21:30:30*jwm224 joined #nim
21:30:30*r4vi joined #nim
21:30:30*ljoonal joined #nim
21:30:30*nisstyre joined #nim
21:30:30*vqrs joined #nim
21:30:30*lkw joined #nim
21:30:30*stefantalpalaru joined #nim
21:30:30*JStoker joined #nim
21:30:36Zevvwaait het nog dan?
21:30:42*nisstyre quit (Max SendQ exceeded)
21:31:30*tane quit (*.net *.split)
21:31:33*vesper11 quit (*.net *.split)
21:31:35*ehmry quit (*.net *.split)
21:31:36*pqflx3[m] quit (*.net *.split)
21:31:37*oculux quit (*.net *.split)
21:31:37*gsingh93 quit (*.net *.split)
21:31:39*EastByte quit (*.net *.split)
21:31:40*bozaloshtsh quit (*.net *.split)
21:31:47*nisstyre joined #nim
21:32:20*MD87 quit (Ping timeout: 248 seconds)
21:32:34*bozaloshtsh joined #nim
21:32:40*tane joined #nim
21:32:40*vesper11 joined #nim
21:32:40*ehmry joined #nim
21:32:40*pqflx3[m] joined #nim
21:32:40*oculux joined #nim
21:32:40*gsingh93 joined #nim
21:32:40*EastByte joined #nim
21:33:10*BitPuffin quit (Ping timeout: 240 seconds)
21:33:12*freepump[m] quit (*.net *.split)
21:33:12*silvernode[m] quit (*.net *.split)
21:33:13*unclechu quit (*.net *.split)
21:33:13*drewr quit (*.net *.split)
21:33:17*vegai quit (*.net *.split)
21:33:17*uvegbot quit (*.net *.split)
21:33:19*oprypin quit (*.net *.split)
21:33:19*moon-chilled quit (*.net *.split)
21:33:22*oprypin joined #nim
21:33:24*vegai joined #nim
21:33:26*GitterIntegratio quit (Ping timeout: 248 seconds)
21:33:29*pigmej quit (Ping timeout: 246 seconds)
21:33:29*l1x quit (Ping timeout: 246 seconds)
21:33:37*uvegbot joined #nim
21:33:40*revere quit (*.net *.split)
21:33:53*revere joined #nim
21:33:55*hohlerde quit (Ping timeout: 240 seconds)
21:33:56*leorize[m] quit (Ping timeout: 252 seconds)
21:33:57*oswin[m] quit (Ping timeout: 248 seconds)
21:33:57*watzon[m] quit (Ping timeout: 248 seconds)
21:33:57*grantmwilliams quit (Ping timeout: 248 seconds)
21:34:33*d10n-work quit (Ping timeout: 268 seconds)
21:34:39*pqflx3[m] quit (Ping timeout: 277 seconds)
21:34:39*drewr joined #nim
21:35:05*junland_ quit (*.net *.split)
21:35:06*Jesin quit (*.net *.split)
21:35:06*disrupteq quit (*.net *.split)
21:35:07*cornfeedhobo quit (*.net *.split)
21:35:09*def- quit (*.net *.split)
21:35:09*Tanger quit (*.net *.split)
21:35:10*jxy quit (*.net *.split)
21:35:11*Araq quit (*.net *.split)
21:35:15*d-nice2[m] quit (*.net *.split)
21:35:15*planetis[m] quit (*.net *.split)
21:35:16*paxis quit (*.net *.split)
21:35:17*msmorgan quit (*.net *.split)
21:35:18*blackbeard420 quit (*.net *.split)
21:35:19*Cadey quit (*.net *.split)
21:35:19*Cthalupa quit (*.net *.split)
21:35:19*matlock quit (*.net *.split)
21:35:20*surma quit (*.net *.split)
21:35:20*mjsir911 quit (*.net *.split)
21:35:21*oz quit (*.net *.split)
21:35:21*rayman22201 quit (*.net *.split)
21:35:21*snowolf quit (*.net *.split)
21:35:23*njoseph quit (*.net *.split)
21:35:23FromDiscord_<clyybber> krux02: When we append we must allocate? How else would we do it?
21:35:32FromDiscord_<clyybber> I mean we could do setLen someEstimate
21:35:54*letto_ quit (*.net *.split)
21:35:57*GaveUp quit (*.net *.split)
21:35:57*Amun_Ra quit (*.net *.split)
21:35:57*d10n quit (*.net *.split)
21:35:57*dom96 quit (*.net *.split)
21:35:57*sentreen quit (*.net *.split)
21:35:58*zama quit (*.net *.split)
21:35:58*sacredfrog quit (*.net *.split)
21:35:59*lbart quit (*.net *.split)
21:35:59*livcd quit (*.net *.split)
21:36:00*yumaikas quit (*.net *.split)
21:36:00*beatmox quit (*.net *.split)
21:36:01*dv^_^ quit (*.net *.split)
21:36:01*kitech1 quit (*.net *.split)
21:36:01*Zevv quit (*.net *.split)
21:36:02*mwbrown quit (*.net *.split)
21:36:03*d-nice2[m] joined #nim
21:36:03*planetis[m] joined #nim
21:36:03*paxis joined #nim
21:36:03*msmorgan joined #nim
21:36:03*blackbeard420 joined #nim
21:36:03*Cadey joined #nim
21:36:03*Cthalupa joined #nim
21:36:03*matlock joined #nim
21:36:03*surma joined #nim
21:36:03*mjsir911 joined #nim
21:36:03*oz joined #nim
21:36:03*rayman22201 joined #nim
21:36:03*snowolf joined #nim
21:36:03*njoseph joined #nim
21:36:05*noonien quit (Ping timeout: 252 seconds)
21:36:05*ng0 quit (*.net *.split)
21:36:06*thomasross quit (*.net *.split)
21:36:06*Lord_Nightmare quit (*.net *.split)
21:36:06*dddddd quit (*.net *.split)
21:36:06*arecaceae quit (*.net *.split)
21:36:07*sagax quit (*.net *.split)
21:36:07*CcxWrk quit (*.net *.split)
21:36:07*LyndsySimon quit (*.net *.split)
21:36:07*Ckat quit (*.net *.split)
21:36:08*joshbaptiste quit (*.net *.split)
21:36:12*casaca quit (*.net *.split)
21:36:12*FromDiscord_ quit (*.net *.split)
21:36:13*Ekho quit (*.net *.split)
21:36:14*idxu quit (*.net *.split)
21:36:14*deepend quit (*.net *.split)
21:36:14*tribly quit (*.net *.split)
21:36:21*skrylar[m] quit (Ping timeout: 245 seconds)
21:36:22*junland_ joined #nim
21:36:22*Jesin joined #nim
21:36:22*disrupteq joined #nim
21:36:22*cornfeedhobo joined #nim
21:36:22*def- joined #nim
21:36:22*Tanger joined #nim
21:36:22*jxy joined #nim
21:36:22*Araq joined #nim
21:36:33*vycb[m] quit (Ping timeout: 245 seconds)
21:36:33*Yardanico[m] quit (Ping timeout: 245 seconds)
21:36:33*lqdev[m] quit (Ping timeout: 245 seconds)
21:36:36*s87651[m] quit (Ping timeout: 248 seconds)
21:36:41*letto_ joined #nim
21:36:41*Amun_Ra joined #nim
21:36:41*GaveUp joined #nim
21:36:41*d10n joined #nim
21:36:41*dom96 joined #nim
21:36:41*sentreen joined #nim
21:36:41*zama joined #nim
21:36:41*sacredfrog joined #nim
21:36:41*lbart joined #nim
21:36:41*livcd joined #nim
21:36:41*yumaikas joined #nim
21:36:41*beatmox joined #nim
21:36:41*dv^_^ joined #nim
21:36:41*kitech1 joined #nim
21:36:41*Zevv joined #nim
21:36:41*mwbrown joined #nim
21:36:44*npgm quit (Ping timeout: 252 seconds)
21:36:53*letto_ quit (*.net *.split)
21:36:54*GaveUp quit (*.net *.split)
21:36:55*Amun_Ra quit (*.net *.split)
21:36:55*d10n quit (*.net *.split)
21:36:55*dom96 quit (*.net *.split)
21:36:55*sentreen quit (*.net *.split)
21:36:57*zama quit (*.net *.split)
21:36:57*sacredfrog quit (*.net *.split)
21:36:57*lbart quit (*.net *.split)
21:36:57*livcd quit (*.net *.split)
21:36:58*yumaikas quit (*.net *.split)
21:36:58*beatmox quit (*.net *.split)
21:36:59*dv^_^ quit (*.net *.split)
21:36:59*kitech1 quit (*.net *.split)
21:36:59*Zevv quit (*.net *.split)
21:37:00*mwbrown quit (*.net *.split)
21:37:00*d-nice2[m] quit (*.net *.split)
21:37:00*planetis[m] quit (*.net *.split)
21:37:01*paxis quit (*.net *.split)
21:37:01*msmorgan quit (*.net *.split)
21:37:02*blackbeard420 quit (*.net *.split)
21:37:03*Cadey quit (*.net *.split)
21:37:03*Cthalupa quit (*.net *.split)
21:37:03*matlock quit (*.net *.split)
21:37:04*surma quit (*.net *.split)
21:37:04*mjsir911 quit (*.net *.split)
21:37:04*oz quit (*.net *.split)
21:37:04*rayman22201 quit (*.net *.split)
21:37:05*snowolf quit (*.net *.split)
21:37:05*njoseph quit (*.net *.split)
21:37:06*junland_ quit (*.net *.split)
21:37:07*Jesin quit (*.net *.split)
21:37:07*disrupteq quit (*.net *.split)
21:37:08*cornfeedhobo quit (*.net *.split)
21:37:10*def- quit (*.net *.split)
21:37:10*Tanger quit (*.net *.split)
21:37:10*jxy quit (*.net *.split)
21:37:11*Araq quit (*.net *.split)
21:37:14*revere quit (*.net *.split)
21:37:16*tane quit (*.net *.split)
21:37:18*vesper11 quit (*.net *.split)
21:37:18*ehmry quit (*.net *.split)
21:37:19*oculux quit (*.net *.split)
21:37:19*gsingh93 quit (*.net *.split)
21:37:20*EastByte quit (*.net *.split)
21:37:21*bozaloshtsh quit (*.net *.split)
21:37:23*vegai quit (*.net *.split)
21:37:23*lritter quit (*.net *.split)
21:37:24*zielmicha__ quit (*.net *.split)
21:37:25*r4vi quit (*.net *.split)
21:37:25*ljoonal quit (*.net *.split)
21:37:26*vqrs quit (*.net *.split)
21:37:26*lkw quit (*.net *.split)
21:37:27*stefantalpalaru quit (*.net *.split)
21:37:27*JStoker quit (*.net *.split)
21:37:29*oprypin quit (*.net *.split)
21:37:29*Yardanico quit (*.net *.split)
21:37:31*jwm224 quit (*.net *.split)
21:37:31*skelett quit (*.net *.split)
21:37:33*ikan-keli_ quit (*.net *.split)
21:37:35*zedeus quit (*.net *.split)
21:37:36*lmariscal06 quit (*.net *.split)
21:37:36*jken quit (*.net *.split)
21:37:37*Mister_Magister quit (*.net *.split)
21:37:37*federico3 quit (*.net *.split)
21:37:38*krux02 quit (*.net *.split)
21:37:38*dadada quit (*.net *.split)
21:37:38*theelous3 quit (*.net *.split)
21:37:39*FromGitter quit (*.net *.split)
21:37:39*gangstacat quit (*.net *.split)
21:37:39*tefter quit (*.net *.split)
21:37:42*Zectbumo quit (*.net *.split)
21:37:42*filcuc quit (*.net *.split)
21:37:42*Trustable quit (*.net *.split)
21:37:42*gmpreussner quit (*.net *.split)
21:37:42*acidx quit (*.net *.split)
21:37:42*shadowbane quit (*.net *.split)
21:37:42*solitudesf quit (*.net *.split)
21:37:43*blueberrypie quit (*.net *.split)
21:37:44*mal`` quit (*.net *.split)
21:37:44*disruptek quit (*.net *.split)
21:37:44*nullwarp quit (*.net *.split)
21:37:44*MyMind quit (*.net *.split)
21:37:44*avsej quit (*.net *.split)
21:37:45*SunDwarf quit (*.net *.split)
21:37:45*MightyJoe quit (*.net *.split)
21:37:46*Jjp137 quit (*.net *.split)
21:37:46*ofelas quit (*.net *.split)
21:37:47*uvegbot quit (*.net *.split)
21:37:47*nisstyre quit (*.net *.split)
21:37:47*xet7 quit (*.net *.split)
21:37:47*abm quit (*.net *.split)
21:37:48*chemist69 quit (*.net *.split)
21:37:48*muffindrake quit (*.net *.split)
21:37:48*xace quit (*.net *.split)
21:37:49*onionhammer quit (*.net *.split)
21:37:49*rockcavera quit (*.net *.split)
21:37:49*disbot quit (*.net *.split)
21:37:50*salotz[m] quit (*.net *.split)
21:37:50*WilhelmVonWeiner quit (*.net *.split)
21:37:50*crem quit (*.net *.split)
21:37:51*opal quit (*.net *.split)
21:37:51*Pqzcih5 quit (*.net *.split)
21:37:51*leorize quit (*.net *.split)
21:37:51*drewr quit (*.net *.split)
21:37:52*sammich quit (*.net *.split)
21:37:52*hpyc9 quit (*.net *.split)
21:37:53*nuxdie quit (*.net *.split)
21:37:53*matti quit (*.net *.split)
21:37:53*qwertfisch quit (*.net *.split)
21:37:53*setenforce quit (*.net *.split)
21:37:54*euantor quit (*.net *.split)
21:37:54*paper_ quit (*.net *.split)
21:37:55*ldlework quit (*.net *.split)
21:37:55*shodan45 quit (*.net *.split)
21:37:55*literal quit (*.net *.split)
21:37:56*madprops quit (*.net *.split)
21:37:56*pydsigner quit (*.net *.split)
21:37:58*shashlick quit (*.net *.split)
21:37:58*pbb_ quit (*.net *.split)
21:37:58*koltrast_ quit (*.net *.split)
21:37:58*nimblepoultry quit (*.net *.split)
21:37:59*golechwi quit (*.net *.split)
21:37:59*enthus1ast quit (*.net *.split)
21:37:59*sknebel quit (*.net *.split)
21:38:01*ChanServ quit (*.net *.split)
21:39:26*jken joined #nim
21:39:26*mwbrown joined #nim
21:39:26*Zevv joined #nim
21:39:26*kitech1 joined #nim
21:39:26*dv^_^ joined #nim
21:39:26*beatmox joined #nim
21:39:26*yumaikas joined #nim
21:39:26*livcd joined #nim
21:39:26*lbart joined #nim
21:39:26*sacredfrog joined #nim
21:39:26*zama joined #nim
21:39:26*sentreen joined #nim
21:39:26*dom96 joined #nim
21:39:26*d10n joined #nim
21:39:26*GaveUp joined #nim
21:39:26*Amun_Ra joined #nim
21:39:26*letto_ joined #nim
21:39:26*Araq joined #nim
21:39:26*jxy joined #nim
21:39:26*Tanger joined #nim
21:39:26*def- joined #nim
21:39:26*cornfeedhobo joined #nim
21:39:26*disrupteq joined #nim
21:39:26*Jesin joined #nim
21:39:26*junland_ joined #nim
21:39:26*njoseph joined #nim
21:39:26*snowolf joined #nim
21:39:26*rayman22201 joined #nim
21:39:26*oz joined #nim
21:39:26*mjsir911 joined #nim
21:39:26*surma joined #nim
21:39:26*matlock joined #nim
21:39:26*Cthalupa joined #nim
21:39:26*Cadey joined #nim
21:39:26*blackbeard420 joined #nim
21:39:26*msmorgan joined #nim
21:39:26*paxis joined #nim
21:39:26*d-nice2[m] joined #nim
21:39:26*drewr joined #nim
21:39:26*revere joined #nim
21:39:26*uvegbot joined #nim
21:39:26*vegai joined #nim
21:39:26*oprypin joined #nim
21:39:26*EastByte joined #nim
21:39:26*gsingh93 joined #nim
21:39:26*oculux joined #nim
21:39:26*ehmry joined #nim
21:39:26*vesper11 joined #nim
21:39:26*tane joined #nim
21:39:26*bozaloshtsh joined #nim
21:39:26*nisstyre joined #nim
21:39:26*JStoker joined #nim
21:39:26*stefantalpalaru joined #nim
21:39:26*lkw joined #nim
21:39:26*vqrs joined #nim
21:39:26*ljoonal joined #nim
21:39:26*r4vi joined #nim
21:39:26*jwm224 joined #nim
21:39:26*skelett joined #nim
21:39:26*zielmicha__ joined #nim
21:39:26*Yardanico joined #nim
21:39:26*lritter joined #nim
21:39:26*federico3 joined #nim
21:39:26*Mister_Magister joined #nim
21:39:26*lmariscal06 joined #nim
21:39:26*zedeus joined #nim
21:39:26*ikan-keli_ joined #nim
21:39:26*xet7 joined #nim
21:39:26*Zectbumo joined #nim
21:39:26*abm joined #nim
21:39:26*opal joined #nim
21:39:26*filcuc joined #nim
21:39:26*Trustable joined #nim
21:39:26*gmpreussner joined #nim
21:39:26*acidx joined #nim
21:39:26*chemist69 joined #nim
21:39:26*shadowbane joined #nim
21:39:26*Pqzcih5 joined #nim
21:39:26*solitudesf joined #nim
21:39:26*leorize joined #nim
21:39:26*krux02 joined #nim
21:39:26*dadada joined #nim
21:39:26*theelous3 joined #nim
21:39:26*muffindrake joined #nim
21:39:26*xace joined #nim
21:39:26*FromGitter joined #nim
21:39:26*onionhammer joined #nim
21:39:26*rockcavera joined #nim
21:39:26*gangstacat joined #nim
21:39:26*blueberrypie joined #nim
21:39:26*mal`` joined #nim
21:39:26*tefter joined #nim
21:39:26*disruptek joined #nim
21:39:26*disbot joined #nim
21:39:26*sammich joined #nim
21:39:26*WilhelmVonWeiner joined #nim
21:39:26*crem joined #nim
21:39:26*nullwarp joined #nim
21:39:26*MyMind joined #nim
21:39:26*avsej joined #nim
21:39:26*paper_ joined #nim
21:39:26*SunDwarf joined #nim
21:39:26*matti joined #nim
21:39:26*hpyc9 joined #nim
21:39:26*MightyJoe joined #nim
21:39:26*qwertfisch joined #nim
21:39:26*Jjp137 joined #nim
21:39:26*ofelas joined #nim
21:39:26*pydsigner joined #nim
21:39:26*literal joined #nim
21:39:26*shodan45 joined #nim
21:39:26*sknebel joined #nim
21:39:26*ldlework joined #nim
21:39:26*enthus1ast joined #nim
21:39:26*madprops joined #nim
21:39:26*golechwi joined #nim
21:39:26*nimblepoultry joined #nim
21:39:26*euantor joined #nim
21:39:26*koltrast_ joined #nim
21:39:26*setenforce joined #nim
21:39:26*pbb_ joined #nim
21:39:26*shashlick joined #nim
21:39:32*matti quit (Ping timeout: 245 seconds)
21:39:35*shashlick quit (*.net *.split)
21:39:35*pbb_ quit (*.net *.split)
21:39:35*koltrast_ quit (*.net *.split)
21:39:35*nimblepoultry quit (*.net *.split)
21:39:36*golechwi quit (*.net *.split)
21:39:36*enthus1ast quit (*.net *.split)
21:39:36*sknebel quit (*.net *.split)
21:39:43*drewr quit (*.net *.split)
21:39:43*sammich quit (*.net *.split)
21:39:44*hpyc9 quit (*.net *.split)
21:39:45*qwertfisch quit (*.net *.split)
21:39:45*setenforce quit (*.net *.split)
21:39:46*euantor quit (*.net *.split)
21:39:46*paper_ quit (*.net *.split)
21:39:47*ldlework quit (*.net *.split)
21:39:47*shodan45 quit (*.net *.split)
21:39:47*literal quit (*.net *.split)
21:39:47*madprops quit (*.net *.split)
21:39:48*pydsigner quit (*.net *.split)
21:39:49*ng0 joined #nim
21:39:49*thomasross joined #nim
21:39:49*Lord_Nightmare joined #nim
21:39:49*dddddd joined #nim
21:39:49*arecaceae joined #nim
21:39:49*sagax joined #nim
21:39:49*CcxWrk joined #nim
21:39:49*LyndsySimon joined #nim
21:39:49*Ckat joined #nim
21:39:49*casaca joined #nim
21:39:49*joshbaptiste joined #nim
21:39:49*FromDiscord_ joined #nim
21:39:49*Ekho joined #nim
21:39:49*idxu joined #nim
21:39:49*deepend joined #nim
21:39:49*tribly joined #nim
21:39:50*matlock quit (Ping timeout: 260 seconds)
21:39:51*LyndsySimon quit (Max SendQ exceeded)
21:39:53*shashlick joined #nim
21:39:53*pbb_ joined #nim
21:39:53*koltrast_ joined #nim
21:39:53*nimblepoultry joined #nim
21:39:53*golechwi joined #nim
21:39:53*enthus1ast joined #nim
21:39:53*sknebel joined #nim
21:40:00FromGitter<kristianmandrup> How do I test if a given flag is part of a set (ie. `options`)
21:40:00disruptekbetter would be to know that we may grow by looking at the cfg and then putting ourselves in a possible to realloc.
21:40:02*opal quit (*.net *.split)
21:40:02*Pqzcih5 quit (*.net *.split)
21:40:03*leorize quit (*.net *.split)
21:40:04*drewr joined #nim
21:40:04*sammich joined #nim
21:40:04*paper_ joined #nim
21:40:04*hpyc9 joined #nim
21:40:04*qwertfisch joined #nim
21:40:04*setenforce joined #nim
21:40:04*euantor joined #nim
21:40:04*madprops joined #nim
21:40:04*ldlework joined #nim
21:40:04*shodan45 joined #nim
21:40:04*literal joined #nim
21:40:04*pydsigner joined #nim
21:40:04disruptekflag in options
21:40:07*l1x joined #nim
21:40:08disrupteks/in a possible/in a position/
21:40:30FromGitter<kristianmandrup> https://nim-lang.org/docs/manual.html#types-set-type `A in B`?
21:40:31*l1x quit (Changing host)
21:40:31*l1x joined #nim
21:40:41*FromDiscord_ quit (Read error: Connection reset by peer)
21:40:55FromGitter<kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e407c6737545d247d2c9b0e]
21:40:57FromGitter<kristianmandrup> ???
21:41:43FromGitter<kristianmandrup> does Nim have null coalescing or some more convenient way to do this?
21:42:04*FromDiscord joined #nim
21:42:07FromDiscord<clyybber> disruptek: Where is copy_special_str?
21:42:21disruptekcommon
21:42:26*so quit (Ping timeout: 240 seconds)
21:42:40FromGitter<kristianmandrup> https://github.com/nim-lang/Nim/issues/13376#issuecomment-583896693
21:42:41disbotMake emit pragma work as expected for JS target with sections ; snippet at 12https://play.nim-lang.org/#ix=2bcp
21:42:43FromDiscord<clyybber> ah, yeah, missed it due to the case
21:42:46*MD87 joined #nim
21:43:26*noonien joined #nim
21:44:12*npgm joined #nim
21:44:44*d10n-work joined #nim
21:44:47*opal joined #nim
21:44:47*Pqzcih5 joined #nim
21:44:47*leorize joined #nim
21:45:04*LyndsySimon joined #nim
21:45:43*opal quit (*.net *.split)
21:45:43*Pqzcih5 quit (*.net *.split)
21:45:43*leorize quit (*.net *.split)
21:45:51*matti joined #nim
21:46:13*matti quit (Excess Flood)
21:46:38FromDiscord<clyybber> disruptek: I found one issue
21:46:44*nuxdie joined #nim
21:47:20*matti joined #nim
21:48:16*filcuc quit (Quit: Konversation terminated!)
21:48:23*so joined #nim
21:48:29FromDiscord<clyybber> chars[index] = '\0'
21:48:34FromDiscord<clyybber> I don't think we need to do that
21:48:37*nuxdie quit (Excess Flood)
21:48:55*thomasross_ joined #nim
21:48:55*thomasross quit (Killed (cherryh.freenode.net (Nickname regained by services)))
21:48:55*thomasross_ is now known as thomasross
21:49:01*nuxdie joined #nim
21:49:22*matlock joined #nim
21:50:47*opal joined #nim
21:50:47*Pqzcih5 joined #nim
21:50:47*leorize joined #nim
21:51:42FromDiscord<clyybber> and then the first few tests start to pass
21:51:46FromDiscord<clyybber> in theory
21:52:47FromDiscord<clyybber> in practice "0E0" == "0E0" fails
21:52:48FromDiscord<clyybber> ...
21:55:08*thomasross_ joined #nim
21:55:08*thomasross is now known as Guest58909
21:55:08*Guest58909 quit (Killed (moon.freenode.net (Nickname regained by services)))
21:55:08*thomasross_ is now known as thomasross
21:56:22*zyklon joined #nim
21:57:44FromDiscord<clyybber> wth
21:57:47*uvegbot quit (Ping timeout: 240 seconds)
21:58:50*abm quit (Quit: Leaving)
21:59:40*d10n-work quit (Excess Flood)
22:00:19krux02clyybber: appending doesn't require allocation, it does allocate only when the capacity is too small
22:00:28FromDiscord<clyybber> exaclty
22:00:45*d10n-work joined #nim
22:00:59krux02but that doesn't explain how your slice/view solution should work
22:01:28disruptekslice/view is a cursor, basically.
22:01:43krux02but it can't insert
22:01:49disruptekthat's okay.
22:02:02FromDiscord<clyybber> & will do that for us
22:02:25*opal quit (*.net *.split)
22:02:25*Pqzcih5 quit (*.net *.split)
22:02:25*leorize quit (*.net *.split)
22:02:38disruptekclyybber: if you have the version of my code that does a setLen then you can omit the terminator.
22:02:48krux02sorry, but `&` is one of the worst parts of Nim
22:03:02krux02it is the cause of most temporary string allocations
22:03:13FromDiscord<clyybber> thats the point
22:03:22FromDiscord<clyybber> with views/slices we could eliminate those
22:03:40krux02example please
22:03:55krux02because I don't get how views/slices will help here at all.
22:04:04FromDiscord<clyybber> disruptek: Ha, figured out the reason for the failing tests, its because the length of the output is 19, even though its only 3 chars
22:04:19disrupteklovely.
22:04:23krux02especially because the `formatValue` is almost already exactly what we need.
22:04:41FromDiscord<clyybber> krux02: Instead of copying strings around we move pointer+len pairs around
22:04:51FromDiscord<clyybber> If its safe to do
22:04:51disruptekkrux02: a = x + y could be rewriten as x.add y, a <- x
22:05:37*d10n-work quit (Excess Flood)
22:05:39disrupteker, throw a & in there somewhere.
22:06:09FromDiscord<clyybber> hmm, right. When we now its a last read we can do it inplace
22:06:17FromDiscord<clyybber> *last use
22:06:39*d10n-work joined #nim
22:06:44disruptekclyybber: i think when this code is converted to nim, some of these tests will magically work.
22:06:55FromDiscord<clyybber> it is converted to nim
22:07:05FromDiscord<clyybber> but the setLen is a bit unneccessary I think
22:07:07disrupteki mean, we're doing things like setting string indices manually, etc.
22:07:11FromDiscord<clyybber> result.setLen 16 I mean
22:07:16FromDiscord<clyybber> disruptek: Ah, sure
22:07:35disrupteki had to assert there was enough memory in there.
22:07:44disrupteki think they default to 200, but who wants to rely upon that?
22:07:46*opal joined #nim
22:07:46*Pqzcih5 joined #nim
22:07:46*leorize joined #nim
22:08:35krux02clyybber: I am personally a fan of `reserve` in std::vector (c++)
22:08:49krux02I asked a long time ago to get the same in nim, but without success.
22:09:14disruptekthat's only the second time i've heard someone ask for that feature.
22:09:35krux02well, I asked for it alreay very early.
22:10:02krux02and I don't understand why the capacity of a seq is a secret that you can't get
22:10:30Araqwell there is newSeqOfCap, that's why
22:11:38disruptek0x96440440 has >32 bits. yet it's a constant in a uint32 array in ryu. what am i missing...
22:11:56disrupteker, it's 32b. i guess something is b0rked.
22:12:39disrupteki guess one has to 'u32 it for some reason.
22:14:12*thomasross quit (Quit: Leaving)
22:14:35krux02clyybber: when you write to `dst: var string`, the `len` is the write cursor. And the slice that you are modifding is from `len` to `cap` (cap is internal)
22:16:06krux02disrupteck 0x96440440 has exactly 32 bits
22:16:11disruptekyes.
22:16:27krux02it doesn't fit in i32, but it does fit in u32
22:16:34FromDiscord<clyybber> im really going crazy
22:16:53disruptekbut in an array defined as [3, uint32] i need to specify 'u32 against it for some reason. even when it's in the middle of the array. not so other array members.
22:17:03FromDiscord<clyybber> oh, its nulls not space
22:19:17krux02disruptek, that is because of how literals work I think.
22:19:32disruptekyes, it makes me sad.
22:19:50*ltriant joined #nim
22:20:17disruptekit's because of how literals /don't/ work. 😉
22:24:47FromDiscord<clyybber> disruptek: with this a few tests pass
22:25:18FromDiscord<clyybber> but I don't exactly get why the 16 chars are needed when it appends the 3 anyways
22:26:35FromDiscord<clyybber> http://ix.io/2bg9
22:27:31disrupteki'm not worried about it. all that shit is gonna go away.
22:28:07*tane quit (Quit: Leaving)
22:29:43*Hideki_ joined #nim
22:32:43*solitudesf quit (Ping timeout: 260 seconds)
22:34:07*Hideki_ quit (Ping timeout: 260 seconds)
22:44:51*u0_a121 quit (Read error: Connection reset by peer)
22:45:47*nullwarp quit (Ping timeout: 260 seconds)
22:47:11*u0_a121 joined #nim
22:47:47disrupteki can only do 128bit stuff in the vm, right?
22:50:58Araqno, but it's in compiler/int128
22:51:12disruptekah, thanks.
22:51:58FromDiscord<clyybber> disruptek: what for?
22:54:20disrupteki need to do some shifts, multiplies, etc.
22:54:41FromDiscord<clyybber> yeah, but why 128
22:54:43FromDiscord<clyybber> bit
22:54:52FromDiscord<clyybber> ryu doesn't use 128 bits either?
22:56:06disruptekno, it uses eg. umul128
22:56:18disrupteki want a nim equivalent.
22:58:03disruptekhigh64 and low64, ya feel me?
22:58:41FromDiscord<clyybber> oh
22:58:42FromDiscord<clyybber> yeye
23:00:09disruptek🙁 ++high1; // overflow into high1
23:04:21*koltrast_ quit (Ping timeout: 252 seconds)
23:05:16*koltrast joined #nim
23:07:20*Hideki_ joined #nim
23:09:39*u0_a121 quit (Read error: Connection reset by peer)
23:11:59*Hideki_ quit (Ping timeout: 268 seconds)
23:14:31stefantalpalaruIs there something similar to --passC and --passL for passing arguments to "ar" when generating static libraries?
23:21:08*Trustable quit (Remote host closed the connection)
23:30:58*dadada quit (Ping timeout: 256 seconds)
23:31:54*dadada joined #nim
23:32:17*dadada is now known as Guest55488
23:35:08*ng0_ joined #nim
23:37:57*ng0 quit (Ping timeout: 265 seconds)
23:38:45*nullwarp joined #nim
23:45:45*Guest55488 quit (Ping timeout: 272 seconds)
23:46:11Araqwell Nim doesn't invoke 'ar' at all
23:46:55*dadada_ joined #nim
23:48:38*u0_a121 joined #nim
23:57:42*CcxWrk_ joined #nim
23:57:42*CcxWrk quit (Killed (adams.freenode.net (Nickname regained by services)))
23:57:42*CcxWrk_ is now known as CcxWrk
23:59:31*Ckatt joined #nim
23:59:56*krux02 quit (Remote host closed the connection)