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:35 | FromDiscord_ | <Elegant Beef> Is this still the only method for composition in nim? |
01:25:35 | FromDiscord_ | <Elegant Beef> https://openmymind.net/Interfaces-In-Nim/ |
01:32:41 | * | u0_a121 quit (Read error: Connection reset by peer) |
01:33:27 | leorize | !repo interfaced |
01:33:30 | disbot | https://github.com/andreaferretti/interfaced -- 9interfaced: 11 15 21⭐ 4🍴 & 29 more... |
01:34:49 | leorize | !repo protocoled |
01:34:52 | disbot | https://github.com/b3liever/protocoled -- 9protocoled: 11Interface macro for nim 15 17⭐ 0🍴 7& 25 more... |
01:34:59 | leorize | @Elegant Beef: there you go |
01:40:22 | * | u0_a121 joined #nim |
01:40:26 | FromDiscord_ | <Rika> Concepts are kinda interface-y no? |
01:48:53 | * | ng0_ joined #nim |
01:51:38 | * | ng0 quit (Ping timeout: 260 seconds) |
01:52:00 | ftsf | kinda |
01:52:16 | ftsf | i'm sure there's a bunch of differences, but they feel pretty interfacey to me |
01:59:19 | FromDiscord_ | <Elegant Beef> Thanks |
02:02:14 | FromDiscord_ | <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:10 | ftsf | mmm they seem to be missing from the manual! |
02:04:22 | FromDiscord_ | <Elegant Beef> That's what i thought |
02:04:27 | FromDiscord_ | <Elegant Beef> Also couldnt find anything for impl either |
02:05:27 | Jjp137 | the docs are in the experimental part of the manual: https://nim-lang.org/docs/manual_experimental.html#concepts |
02:06:00 | FromDiscord_ | <Elegant Beef> Ok, thanks |
02:06:12 | ftsf | ooh didn't know about that page |
02:07:31 | FromDiscord_ | <Elegant Beef> Ah so seems concepts are just T.Method, so basically interfaces |
02:07:38 | FromDiscord_ | <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:56 | ftsf | https://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:57 | disbot | ➥ RFC: Variadic Generics [$50] |
02:16:32 | * | u0_a121 quit (Read error: Connection reset by peer) |
02:17:39 | FromDiscord_ | <Elegant Beef> So with this basic thing what's the proper thing to do? |
02:17:40 | FromDiscord_ | <Elegant Beef> https://play.nim-lang.org/#ix=2bav |
02:18:19 | FromDiscord_ | <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:02 | leorize | note 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:50 | FromDiscord_ | <Winton> Breve Introducción Nim: https://youtu.be/xWMG_1karfM |
03:05:32 | FromDiscord_ | <treeform> what https://nim-lang.org/docs/strformat.html does not support commas such as 1,234,567.89 ? |
03:06:32 | disruptek | locale-dependent. |
03:06:56 | FromDiscord_ | <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:36 | FromDiscord_ | <Rika> @Elegant Beef if you wanna enforce a type to conform to a concept, do "doAssert typ is cncpt" |
03:14:45 | FromDiscord_ | <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:23 | leorize | or just take the concept as the parameter |
03:18:07 | FromDiscord_ | <Rika> That too if you want to make the proc generic for the concept |
03:18:10 | FromDiscord_ | <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:43 | FromDiscord_ | <Rika> I don't think you can make a seq of a certain concept |
03:20:14 | FromDiscord_ | <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:05 | leorize | concept is a compile-time construct |
03:21:22 | FromDiscord_ | <Elegant Beef> So it's useless to me |
03:21:40 | leorize | use the macros that I posted earlier for runtime constructs |
03:22:49 | FromDiscord_ | <Elegant Beef> Well ill try it |
03:23:07 | FromDiscord_ | <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:50 | ftsf | is there a way to read compileTime data at runtime? |
05:00:23 | ftsf | i created a {.compileTime.} seq and i'd like to be able to read it at runtime |
05:00:37 | ftsf | but when i read it at runtime it's empty |
05:01:37 | ftsf | from 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:37 | ftsf | " |
05:01:48 | ftsf | it does seem to be available, but is empty |
05:03:39 | FromGitter | <Varriount> ftsf: what about trying it with an object or array? |
05:05:48 | FromDiscord_ | <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:04 | ftsf | yeah, still zero, array is all zeros, int is zeroed |
05:13:59 | * | martinium joined #nim |
05:16:28 | leorize | it's a bug then |
05:19:21 | ftsf | https://play.nim-lang.org/#ix=2bb5 |
05:19:44 | ftsf | it works reading the compileTime var in the main block, but once it's inside a loop it's zeroed |
05:20:59 | leorize | that's a bug for sure |
05:22:03 | ftsf | mmm, can reproduce it with the example from the manual just by adding a loop around the assert |
05:22:07 | ftsf | i'll file an issue |
05:33:04 | ftsf | https://github.com/nim-lang/Nim/issues/13375 |
05:33:06 | disbot | ➥ Accessing compileTime variable at runtime returns zeroed data. ; snippet at 12https://play.nim-lang.org/#ix=2bba |
05:35:01 | ftsf | hmm wonder if there's a way to workaround this for now |
05:47:20 | ftsf | aha, 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:24 | FromGitter | <Varriount> ftsf: What about (as a workaround) serializing the object to a string and assigning to a constant via a macro? |
08:32:37 | FromGitter | <Varriount> Or just assigning a copy of the object to a macro |
08:32:44 | ftsf | mmm i've got a workaround for now |
08:32:56 | ftsf | seems 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:02 | FromGitter | <Varriount> ftsf: So it affects loops? Not everything |
09:15:04 | FromGitter | <Varriount> ? |
09:15:24 | ftsf | no, 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:44 | FromGitter | <Varriount> ftsf: If you're still around, what does the resulting C code look like? |
09:45:03 | ftsf | ahh i dunno.. it's not very readable to me |
09:52:10 | FromGitter | <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:37 | FromGitter | <Varriount> ftsf: Do you get a segmentation fault? |
10:00:52 | FromGitter | <Varriount> Because I do |
10:01:44 | ftsf | nope, https://github.com/nim-lang/Nim/issues/13375 is reproducable on playground, gets an index out of bounds error |
10:01:45 | disbot | ➥ Accessing compileTime variable at runtime returns zeroed data. ; snippet at 12https://play.nim-lang.org/#ix=2bba |
10:02:50 | FromGitter | <Varriount> Ah, ok |
10:02:54 | FromGitter | <Varriount> That would cause it |
10:03:16 | * | thomasross joined #nim |
10:03:18 | ftsf | prior 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:03 | FromGitter | <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:03 | FromGitter | <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:06 | FromDiscord_ | <mratsim> compiletime var crossing to runtime boundaries are broken |
11:42:23 | FromDiscord_ | <mratsim> I'm not aware of an example that worked |
11:47:51 | * | Hideki_ joined #nim |
11:48:15 | * | leorize joined #nim |
11:52:47 | FromGitter | <kristianmandrup> Is there any way I can achieve this with Nim? |
11:52:57 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff299ecfa4461c04cc607] |
11:53:35 | FromGitter | <kristianmandrup> Essentially trying to bind the generated var name `x` to the imported `x$$` |
11:53:55 | FromGitter | <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:42 | FromGitter | <kristianmandrup> Is this sort of macro only available for `proc`? a pity |
11:57:22 | FromGitter | <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:02 | lqdev[m] | I think emit supports some directives for where the generated code should be placed. let me check |
12:02:28 | FromGitter | <kristianmandrup> I found this |
12:02:41 | FromGitter | <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:17 | FromGitter | <kristianmandrup> Then I get |
12:04:29 | FromGitter | <kristianmandrup> ```var object_id_51437 = [0]; ⏎ /*TYPESECTION*/import { x as x$$ } from './aba'``` [https://gitter.im/nim-lang/Nim?at=5e3ff54c55b6b04bf6a002f1] |
12:04:53 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff565df1153705e24a9c9] |
12:06:03 | FromGitter | <kristianmandrup> Also, what is the `nodecl` pragma used in some places? |
12:06:54 | FromGitter | <kristianmandrup> `lfNoDecl, # do not declare it in C` |
12:06:56 | lqdev[m] | it marks that the thing it's attached to should not generate any code. |
12:07:27 | lqdev[m] | also I think that INCLUDESECTION could work better for you |
12:08:07 | FromGitter | <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:43 | FromGitter | <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:11 | FromGitter | <kristianmandrup> using include section, same result |
12:10:11 | * | Hideki_ joined #nim |
12:10:16 | FromGitter | <kristianmandrup> ```var object_id_51437 = [0]; ⏎ /*INCLUDESECTION*/import { x as x$$ } from './aba'``` [https://gitter.im/nim-lang/Nim?at=5e3ff6a83716b919ba0934f7] |
12:11:06 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e3ff6da63c15921f46ae7c6] |
12:12:10 | FromGitter | <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:04 | FromGitter | <kristianmandrup> I've raised this issue to address it: https://github.com/nim-lang/Nim/issues/13376 |
12:29:06 | disbot | ➥ Make 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:17 | FromGitter | <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:32 | FromGitter | <kristianmandrup> Why has no effort been made to add this since Nov 2018? |
12:39:31 | FromGitter | <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:37 | ftsf | are 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:29 | Araq | tried Dr.Memory? |
12:49:41 | ftsf | i 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:31 | ftsf | ahh, 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:05 | FromGitter | <kristianmandrup> anyone knows what this mean? |
13:59:07 | FromGitter | <kristianmandrup> `template/generic instantiation of `newSeq` from here` |
13:59:18 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40103637545d247d2ba07a] |
13:59:23 | ftsf | read the next lines for context |
13:59:38 | FromGitter | <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:13 | FromGitter | <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:52 | stefantalpalaru | Where 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:58 | stefantalpalaru | Maybe here? https://nim-lang.org/docs/parsecfg.html |
14:28:27 | stefantalpalaru | But 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:45 | FromGitter | <kristianmandrup> what is the right way to do null checks? `isNull`? |
14:56:00 | FromGitter | <kristianmandrup> or `if aliasNameArg != null` ? |
14:57:14 | stefantalpalaru | How 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:44 | FromGitter | <kristianmandrup> ah, I see: `while aa != nil ` |
14:58:01 | * | Hideki_ joined #nim |
14:58:04 | stefantalpalaru | Are 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:32 | FromGitter | <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:51 | disruptek | hearts 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:35 | leorize | @deech: if it's "still reachable" it's not a leak |
16:15:41 | * | Vladar quit (Quit: Leaving) |
16:20:34 | Araq | stefantalpalaru, dunno |
16:20:48 | * | greenfork joined #nim |
16:20:54 | Araq | implicit 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:17 | dadada | https://itsfoss.com/get-featured-on-its-foss/ |
17:28:43 | * | marmotini_ joined #nim |
17:28:53 | dadada | maybe Araq could be interviewed by them ... they seem to get a decent amount of traffic judging by the number of comments |
17:29:31 | dadada | "What do we cover? |
17:29:33 | dadada | Basically, anything that interests our readers who are Linux and Open Source lovers." |
17:30:43 | dadada | s/Araq/Araq or other main contributors |
17:31:46 | FromDiscord_ | <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:41 | disruptek | what's good about the stack? |
17:41:22 | disruptek | i'll take my answer off the air, i guess. |
17:43:27 | dadada | I don't even understand your question |
17:43:45 | * | marmotini_ quit (Remote host closed the connection) |
17:43:58 | dadada | software stack? stack vs heap? which stack? |
17:44:09 | disruptek | stack 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:27 | disruptek | i'm only interested in semantics; pretend that i'm porting the concept of a stack to something that has no such concept. |
17:45:36 | disruptek | is it even worth porting? what's it good for? |
17:45:41 | * | u0_a121 joined #nim |
17:46:39 | * | marmotini_ joined #nim |
17:46:59 | disruptek | all 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:49 | Zevv | sow how are the floats coming along disruptek |
17:58:02 | Zevv | nice 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:27 | disruptek | it's lovely. |
17:58:34 | Zevv | are you planning to do a 1-to-1 port from C, or are you actually going to understand all the details? |
17:58:53 | disruptek | 1-to-1 first. there are a lot of subtleties iirc. |
17:59:12 | disruptek | i'm really curious if we can outperform c, too. |
17:59:31 | Zevv | yeah. 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:38 | disruptek | like, 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:00 | Zevv | but I think these tables require bigint to generate |
18:00:08 | Zevv | which we dont have |
18:00:17 | disruptek | i'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:34 | Zevv | shr shl and or not |
18:00:46 | disruptek | we have 128bit in the compiler. should be okay. |
18:01:09 | Zevv | but since performance was the goal of the c impl, I would not hope too much about outperforming that |
18:01:21 | Zevv | but yeah, one can always try |
18:01:53 | disruptek | i'm using "performance" to mean the net utility of the module. |
18:02:12 | disruptek | i think we can make it easier to use, easier to understand, etc. |
18:02:14 | Zevv | the go implementation is a bit more readable then the c version btw |
18:02:29 | disruptek | yeah, but it doesn't port as naively. |
18:02:35 | Zevv | not much to use. f2str and d2str is about the whole API |
18:03:01 | disruptek | there are some architecture things we'll want to figure out. |
18:03:39 | disruptek | also, i know the c version is a little polished versus the paper, so i wanted to start there. |
18:03:40 | Zevv | also 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:45 | Zevv | for size reasons |
18:04:04 | Zevv | how "polished"? |
18:04:08 | disruptek | yeah, 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:57 | disruptek | i'm not aware of bugs in the paper but it's a pretty naive algo there, correct as it may be. |
18:05:24 | Zevv | ah right. no papers just lie, always use the implementation. it is there for a reason |
18:05:58 | disruptek | well, maybe not a lie per se, but glosses over details that can matter in practice. |
18:06:06 | disruptek | read: performance |
18:07:23 | Zevv | exactly |
18:08:35 | * | Hideki_ quit (Ping timeout: 260 seconds) |
18:10:12 | disruptek | when i was trying to use ml for realtime trading, it was a c# runtime and my code was python. |
18:10:30 | disruptek | the overhead was all in f2s, basically. |
18:10:53 | disruptek | there wasn't a c# ryu port then, but i'm not even sure i coulda used it if there was. |
18:11:20 | Zevv | you should just precalculate and hash all double floats at compile time |
18:11:28 | Zevv | for performance, you know |
18:11:49 | disruptek | but 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:14 | Zevv | and here we are |
18:12:42 | disruptek | something like that. 😁 |
18:13:34 | FromGitter | <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:50 | disruptek | deech: this is the closest i've come to doing that: https://github.com/disruptek/nimph/blob/master/bootstrap.sh#L12 |
18:14:57 | disruptek | maybe it helps. |
18:18:13 | FromGitter | <deech> Interesting, don't see `passNim` documented anywhere, it didn't work but it's a starting point. Thanks! |
18:18:48 | disruptek | you tried `nimble build -- -d:some -d:options -d:here`? |
18:20:02 | FromGitter | <deech> Just tried it with `nimble test -- -d:...` but it didnt' work. |
18:20:11 | FromGitter | <deech> I don't have a `build` task. |
18:20:28 | disruptek | are you sure you don't want to put this define into a something.nim.cfg file? |
18:21:16 | FromGitter | <deech> Maybe, it's a custom flag I want to pass to the build. |
18:22:12 | FromGitter | <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:32 | FromGitter | <deech> I can always manually parse out the command line options but it's kind of a meh option. |
18:24:01 | disruptek | i use nimph.nim.cfg for that. |
18:24:34 | disruptek | https://github.com/disruptek/nimph/blob/master/src/nimph.nim.cfg#L21 |
18:24:52 | disruptek | ymmv 😉 |
18:25:01 | shashlick | That works with build not test |
18:25:07 | shashlick | Use a cfg file for tests |
18:25:39 | disruptek | i'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:54 | FromGitter | <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:09 | disruptek | what? |
18:26:26 | * | marmotini_ quit (Remote host closed the connection) |
18:27:09 | disruptek | i dunno how nimble works. nimph's local deps trickle down by default but can be overridden in the dependencies. |
18:27:26 | FromGitter | <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:43 | FromGitter | <deech> Yeah ok, `nimph` souunds nicer. |
18:28:12 | disruptek | well, if you use nimph with global deps, you'll get more nimble-like behavior, i guess. |
18:28:54 | disruptek | ie. 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:16 | disruptek | btw, 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:11 | shashlick | Just put the cfg in the tests dir |
18:32:17 | shashlick | It will only apply to binaries in that directory |
18:32:30 | disruptek | leorize: why does NimTypeOf move my cursor? |
18:32:55 | shashlick | And if you have a test.nim.cfg it will be used only for that test |
18:33:59 | shashlick | Alternatively just create a single test which calls your real tests with whatever flags in code |
18:34:19 | shashlick | Or 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:59 | rayman22201 | @Zevv @disruptek what is Ryu? What madness are you up to today? Lol |
18:48:00 | * | opal joined #nim |
18:49:06 | disruptek | i think the needed-libraries thread might like to a talk or two. fun to watch. |
19:02:41 | Araq | is it too late to give 'nimph' a better name? |
19:02:51 | disruptek | what do you have in mind? |
19:03:35 | Araq | nismart |
19:03:55 | disruptek | o.O |
19:04:20 | rayman22201 | Shop smart, shop S Mart 😝 |
19:04:50 | narimiran | N is m-art |
19:04:58 | disruptek | y'know, nimph sounds like `nimf`. not `nim pee aiche`. |
19:05:16 | * | Guest94576 quit (Quit: Guest94576) |
19:05:37 | Araq | what does 'nimf' mean? |
19:06:00 | shashlick | Araq - most of your must haves are done on choosenim |
19:06:16 | shashlick | Can you please check and see what remains |
19:06:17 | FromDiscord_ | <Recruit_main_70007> important question, are dll imports broken in windows?? |
19:06:17 | shashlick | Can you please check and see what remains |
19:06:27 | FromGitter | <zetashift> nimf is slang for nymphy!? |
19:06:30 | disruptek | nymph: 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:31 | FromGitter | <zetashift> nympho* |
19:06:39 | FromDiscord_ | <Recruit_main_70007> the rosetta code example doesnt work |
19:06:54 | FromGitter | <zetashift> link? |
19:06:57 | disruptek | 2: a larva of an insect with incomplete metamorphosis (as the dragonfly or mayfly) |
19:07:02 | FromDiscord_ | <Recruit_main_70007> https://rosettacode.org/wiki/Call_a_function_in_a_shared_library#Nim |
19:07:04 | disruptek | 3: a voluptuously beautiful young woman [syn: {nymph}, {houri}] |
19:07:31 | FromDiscord_ | <Recruit_main_70007> i obv change .so to .dll |
19:08:15 | Araq | disruptek, ah thanks for the explanation |
19:08:20 | Araq | too subtle for me |
19:08:30 | Araq | but now I can see the name's point |
19:08:40 | disruptek | yeah, i thought it might help. |
19:08:46 | Araq | Recruit_main_7007: no, they are not. |
19:08:48 | Araq | shashlick, ok ... |
19:10:31 | FromGitter | <zetashift> What's the error you get? |
19:10:46 | FromGitter | <zetashift> and don't you have to specify the dll with a compiler switch? |
19:10:54 | FromDiscord_ | <Recruit_main_70007> araq, then whats happening? im sorry, this is probably an stupid error, but i just cant see it |
19:12:12 | FromGitter | <zetashift> Recruit_main_70007 what's the error :O? |
19:12:13 | shashlick | Share some snippet for us to check |
19:12:35 | FromDiscord_ | <Recruit_main_70007> could not load xxx.dll |
19:12:59 | shashlick | So are you on windows or Linux |
19:13:33 | FromGitter | <zetashift> He was on windows |
19:13:50 | shashlick | Check the arch |
19:14:23 | shashlick | 32bit vs 64bit |
19:15:08 | FromDiscord_ | <Recruit_main_70007> how? |
19:15:08 | FromDiscord_ | <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:21 | shashlick | nim -v |
19:16:29 | Araq | shashlick, very nice, only one point from my wishlist remains: |
19:16:36 | Araq | https://github.com/dom96/choosenim/issues/12 |
19:16:36 | disbot | ➥ Change the way update works |
19:16:52 | Araq | and it's only 3 years old |
19:17:02 | shashlick | Ok sounds fair |
19:17:13 | shashlick | I was planning on adding nightlies support too |
19:17:15 | Araq | it's not that important but I do wonder |
19:17:38 | * | ng0 quit (Ping timeout: 246 seconds) |
19:17:40 | Araq | if choosenim is Nim's official installer, how come it's dom96/choosenim? |
19:18:25 | FromGitter | <zetashift> historic reasons? |
19:18:32 | FromDiscord_ | <Recruit_main_70007> Windows: i386 |
19:19:28 | shashlick | Time to move it? |
19:19:46 | shashlick | Recruit: check the dll arch as well |
19:19:50 | FromGitter | <zetashift> and the dll arch Recruit_main_70007? |
19:20:16 | FromDiscord_ | <Recruit_main_70007> same |
19:20:37 | Araq | shashlick, I'm a very resentful guy |
19:21:04 | Araq | back then I didn't ask for yet-another-way to install Nim. it's a nightmare for QA |
19:21:33 | Araq | and the involved people could also have improved Nimble instead |
19:21:49 | Araq | so for now we leave it as dom96/choosenim |
19:22:28 | Araq | I'm grateful you improve it but at the same time Nimble needs our love moreso |
19:22:38 | shashlick | Ok I'm not particularly opinionated so don't mind standing on shoulders to make life better for the community |
19:22:55 | Araq | well it works and now it works better |
19:23:11 | shashlick | I've been transitioning out of choosenim and onto nimble in my round Robin |
19:23:34 | Araq | so ... how do we get a new choosenim release out ? |
19:23:36 | shashlick | So I can continue with some more choosenim improvements or move on |
19:24:17 | FromGitter | <zetashift> is the dll in the same folder? |
19:24:24 | shashlick | Just need to update the version and tag |
19:24:24 | shashlick | CI builds it for us |
19:24:26 | shashlick | Dom96 then updates nimlang website etc |
19:24:30 | shashlick | Change log as well |
19:25:11 | Araq | ok, so I don't have to do anything |
19:26:12 | shashlick | Yes it is quite easy |
19:26:23 | shashlick | I don't have site access else could do that too |
19:26:59 | * | abm joined #nim |
19:27:11 | FromGitter | <zetashift> Was the original plan to let nimble also be the installer of Nim? |
19:27:15 | shashlick | I have a big nimterop backlog since I'm updating it to use the compiler AST and renderer |
19:27:38 | shashlick | But 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:42 | Araq | zetashift: no, definitely not. |
19:30:49 | FromGitter | <kristianmandrup> What is the best way to experiment with changes to Nim itself? |
19:30:58 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e405df237545d247d2c5beb] |
19:31:20 | Yardanico | clone the repo locally |
19:31:21 | FromGitter | <kristianmandrup> Trying to run the Nim test suite (branches of from most recent `master`) |
19:31:44 | Yardanico | clone nim repo, run build_all.sh, and add repo/bin directory to PATH |
19:32:03 | FromGitter | <kristianmandrup> yes, I see now |
19:32:05 | FromGitter | <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:51 | Yardanico | yeah, usually you just test tests which may be affected by your change, we still have a CI after all |
19:34:01 | FromGitter | <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:26 | Yardanico | well, or just add that dir to your $PATH |
19:34:32 | Yardanico | without additional variables :) |
19:34:33 | * | natrys quit (Quit: natrys) |
19:34:40 | FromGitter | <kristianmandrup> `export PATH=$NIM_BIN:$PATH |
19:34:51 | FromGitter | <kristianmandrup> Sure, I like to try and keep it tidy |
19:35:12 | Yardanico | yeah, but make sure it doesn't conflict with nim installed from choosenim or a package manager |
19:35:32 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e405f04cd2d737bb069c1f4] |
19:35:49 | FromGitter | <kristianmandrup> `Nim/lib/system.nim(207, 11) Error: undeclared identifier: 'is'` ?? |
19:36:10 | Araq | kristianmandrup: don't use 'master' |
19:36:15 | FromGitter | <kristianmandrup> I ran `./build_all.sh` just before |
19:36:19 | Araq | not sure why it's still a thing, master is dead |
19:36:20 | FromGitter | <kristianmandrup> oh? |
19:36:24 | FromGitter | <kristianmandrup> damn |
19:36:31 | Yardanico | the default branch is devel anyway |
19:36:32 | FromGitter | <kristianmandrup> which branch then? `develop`? |
19:36:36 | FromGitter | <kristianmandrup> okay |
19:39:12 | shashlick | Use choosenim, can set it to a release version or pick a local git dir |
19:39:17 | shashlick | So you can go back and forth |
19:39:18 | FromGitter | <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:29 | Yardanico | wdym? |
19:39:34 | Yardanico | just sh build_all.sh should do the job |
19:39:38 | disruptek | don't overthink it. |
19:39:47 | Yardanico | it won't change git-tracked files |
19:39:53 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40600937545d247d2c60bc] |
19:40:18 | Yardanico | sh build_all.sh ? |
19:40:25 | FromGitter | <kristianmandrup> what would be the `choosenim` command now that I have set `$NIM_BIN`? |
19:40:39 | FromGitter | <kristianmandrup> and is in `$PATH` |
19:40:58 | FromGitter | <kristianmandrup> or simply `$ choosenim .` perhaps |
19:41:33 | FromGitter | <kristianmandrup> ``` choosenim ~/projects/nim ⏎ Selects the specified Nim installation.``` [https://gitter.im/nim-lang/Nim?at=5e40606dd4daaa26c192d282] |
19:41:36 | FromGitter | <kristianmandrup> I would think" |
19:42:57 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4060c1ecfa4461c04dbde3] |
19:43:18 | FromGitter | <kristianmandrup> ```choosenim $NIM_HOME ⏎ Switched to Nim (/Users/kristianmandrup/repos/nim-projects/Nim)``` [https://gitter.im/nim-lang/Nim?at=5e4060d6d4daaa26c192d2e0] |
19:43:21 | FromGitter | <kristianmandrup> Sweet :) |
19:43:53 | shashlick | Just set ~/.nimble/bin to your path and use choosenim to set active Nim |
19:43:58 | shashlick | Rest is taken care of |
19:44:10 | disruptek | i pity the fool. |
19:44:16 | * | Zectbumo joined #nim |
19:44:20 | shashlick | Why sit and mess around with path |
19:44:27 | FromGitter | <kristianmandrup> okay, but works now |
19:44:31 | disruptek | when you get tired of this shit, just git clone Nim and move on with your life. |
19:44:31 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40611f1d23aa47aa042da8] |
19:45:17 | shashlick | That works if you live in devel |
19:45:34 | FromGitter | <kristianmandrup> yes, working from my own clone |
19:45:36 | shashlick | But when you start testing 20 Nim versions, choosenim works |
19:46:18 | shashlick | And that makes sense when you start working on libraries |
19:47:05 | FromGitter | <kristianmandrup> Just ran koch tests on devel |
19:47:07 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4061bbc900d747abf4f5bf] |
19:47:30 | Yardanico | well devel is devel for a reason - it can break :P |
19:47:39 | Yardanico | although last commit's CI is green |
19:48:00 | FromGitter | <kristianmandrup> pulled latest from Nim, same problem |
19:49:11 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4062371d23aa47aa042fd0] |
19:49:46 | Yardanico | https://github.com/nim-lang/Nim/runs/434535937 |
19:50:00 | Yardanico | and https://github.com/nim-lang/Nim/runs/434537825 |
19:51:13 | FromGitter | <kristianmandrup> no worries, I can just run particular test - I 'd like to test `jsgen` for my case/changes |
19:52:02 | FromGitter | <kristianmandrup> I can see there is a `tests/js` folder :) |
19:52:55 | FromGitter | <kristianmandrup> test categories? |
19:53:26 | FromGitter | <kristianmandrup> "you can run a subset of tests by specifying a category (for example``./koch tests cat async``).`" |
19:54:12 | FromGitter | <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:01 | FromGitter | <kristianmandrup> No such file `testament/tester.nim` at this point :P |
19:55:32 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e4063b345000661fcae7963] |
19:56:05 | FromGitter | <kristianmandrup> `./koch tests cat js` seems to run all the tests though |
19:57:23 | FromGitter | <kristianmandrup> Been renamed to `testament/testament` clearly ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40642345000661fcae7aec] |
19:58:24 | Yardanico | did you do "sh build_all.sh" before trying the tests though? and does nim --version output 1.1.1 ? |
20:02:51 | FromGitter | <kristianmandrup> Building now... meanwhile `nim --version` gives me `0.20` |
20:02:56 | Yardanico | well that's not right |
20:03:16 | Yardanico | try "which nim" |
20:07:02 | FromGitter | <kristianmandrup> ```$ which nim ⏎ /Users/kristianmandrup/repos/nim-projects/Nim/bin/nim``` [https://gitter.im/nim-lang/Nim?at=5e4066661d23aa47aa0439f3] |
20:07:16 | FromGitter | <kristianmandrup> Yeah, the 0.20 was my old "direct" install last summer. |
20:07:47 | disruptek | are we having fun yet? |
20:07:56 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e40669c1d23aa47aa043a6c] |
20:08:06 | FromGitter | <kristianmandrup> @disruptek - For sure :) |
20:09:20 | * | nsf quit (Quit: WeeChat 2.7) |
20:10:02 | FromGitter | <kristianmandrup> But I should have to build the whole thing for every code change in Nim, right? |
20:10:21 | FromGitter | <kristianmandrup> Running all the `js` category tests now :) |
20:10:37 | FromGitter | <kristianmandrup> `Used /Users/kristianmandrup/repos/nim-projects/Nim/bin/nim to run the tests. Use --nim to override.` Interesting :) |
20:11:53 | Yardanico | Well, you need to recompile the compiler if you do a compiler change, but it's quite fast with debug mode |
20:12:42 | FromGitter | <kristianmandrup> how do I recompile the compiler efficiently then? |
20:12:47 | Yardanico | So 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:50 | FromGitter | <kristianmandrup> ```var v {.codegenDecl: "console.log(-1); var $2".} = 2 ⏎ echo v``` [https://gitter.im/nim-lang/Nim?at=5e4067c2f3718e705df149ad] |
20:13:24 | FromGitter | <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:10 | Zevv | rayman22201: ryu is a fast float-to-string algo |
20:15:35 | Zevv | there 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:43 | Zevv | spoiler: he could |
20:17:35 | disruptek | i mean, in fairness, he couldn't really find much evidence of anyone really trying to optimize it, iirc. |
20:17:35 | FromGitter | <kristianmandrup> how to I run a single Nim test using koch? |
20:20:50 | rayman22201 | @zevv fascinating. Thanks 😊 |
20:22:40 | FromGitter | <kristianmandrup> So I made a minute change in Nim `gen` proc, simply echoing the incoming options |
20:23:03 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e406a263716b919ba0a4b5b] |
20:23:30 | FromGitter | <kristianmandrup> How do I now ensure this takes effect when I run on mu sandbox example, without rebuilding all of Nim? |
20:23:52 | FromGitter | <kristianmandrup> `var x = 2` |
20:24:00 | FromGitter | <kristianmandrup> `nim js sandbox/try.nim` |
20:25:34 | FromGitter | <kristianmandrup> or does it do incremental builds? |
20:26:07 | disruptek | ./koch boot -d:danger |
20:26:54 | FromGitter | <kristianmandrup> I just tried `build_all` again - builds all from scratch |
20:27:59 | FromDiscord_ | <clyybber> sup |
20:28:12 | FromGitter | <kristianmandrup> ` ./koch boot -d:danger` also seems to build the whole thing :O |
20:30:01 | disruptek | oh, i didn't realize you only wanted half a compiler. |
20:30:09 | disruptek | sup clyybber |
20:30:36 | FromDiscord_ | <clyybber> yo dawg, heard you writin ryu? |
20:30:57 | disruptek | it has a bug. |
20:31:04 | FromDiscord_ | <clyybber> oh |
20:31:17 | FromDiscord_ | <clyybber> nice, I am in the right mood for a hunt |
20:31:40 | Yardanico | @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:44 | FromDiscord_ | <clyybber> since my tomorrow exam got cancelled due to storm :p |
20:32:00 | Yardanico | ./koch temp js file.nim |
20:37:08 | FromGitter | <kristianmandrup> @Yaranico OK :) |
20:38:02 | FromGitter | <kristianmandrup> Anyone have any ideas how/where I can set `options` on `PProc` in Nim? |
20:38:24 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e406dc03716b919ba0a5278] |
20:38:34 | FromGitter | <kristianmandrup> Currently empty options |
20:39:05 | FromGitter | <kristianmandrup> ```Error: arguments can only be given if the '--run' option is selected ⏎ ``` [https://gitter.im/nim-lang/Nim?at=5e406de9ecfa4461c04ddbf4] |
20:39:54 | FromDiscord_ | <clyybber> disruptek: Whats the bug? |
20:39:57 | FromDiscord_ | <clyybber> ~motd |
20:39:58 | disbot | motd: 11janet versus fennel... fight! |
20:40:29 | FromGitter | <kristianmandrup> `nim js --d:nodejs sandbox/try.nim` options also empty `{}` |
20:40:35 | disruptek | the bug is... it doesn't work. |
20:40:47 | FromDiscord_ | <clyybber> ah |
20:40:57 | FromDiscord_ | <clyybber> how did you translate it? |
20:41:00 | FromDiscord_ | <clyybber> or did you wrap it? |
20:41:08 | disruptek | with my magic hands. |
20:41:19 | FromDiscord_ | <clyybber> nice |
20:41:26 | FromDiscord_ | <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:01 | disruptek | kk, 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:23 | FromGitter | <kristianmandrup> Anyone knows the entry point for the Nim js compiler? |
20:42:47 | * | xet7 joined #nim |
20:42:49 | FromDiscord_ | <clyybber> disruptek: Is it really just 97 lines? |
20:43:04 | FromDiscord_ | <clyybber> or is master outdated? |
20:43:41 | FromGitter | <kristianmandrup> only `template config*(p: PProc): ConfigRef = p.module.config` is exported in `jsgen.nim` ? |
20:43:43 | FromGitter | <kristianmandrup> And `const JSgenPass* = makePass(myOpen, myProcess, myClose)` |
20:43:46 | disruptek | see f2s branch |
20:44:01 | FromDiscord_ | <clyybber> aight |
20:44:06 | disruptek | oh, i forgot to commit it. |
20:44:18 | disruptek | ptal now |
20:45:15 | FromDiscord_ | <clyybber> weird |
20:45:26 | FromDiscord_ | <clyybber> I'm getting "cannot open file: ryu/common" |
20:45:42 | FromDiscord_ | <clyybber> argh |
20:45:45 | FromDiscord_ | <clyybber> u depend on nimble |
20:45:48 | disruptek | echo '--path="$config"' > nim.cfg |
20:46:01 | FromDiscord_ | <clyybber> aight |
20:46:10 | disruptek | blame shashlick |
20:46:34 | FromDiscord_ | <clyybber> **blame** |
20:47:11 | FromDiscord_ | <clyybber> hey, it compiles |
20:47:44 | FromDiscord_ | <clyybber> when I run it in changes my path |
20:47:46 | FromDiscord_ | <clyybber> lol |
20:47:52 | FromDiscord_ | <clyybber> eh, not my path |
20:47:55 | FromDiscord_ | <clyybber> my CWD |
20:48:12 | FromGitter | <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:12 | disruptek | unlikely. |
20:48:13 | shashlick | What did i do now |
20:48:26 | disruptek | shashlick: you made it too easy to use travis. |
20:48:34 | FromDiscord_ | <clyybber> shame |
20:48:37 | FromGitter | <kristianmandrup> `conf` does not have an echo, obviously |
20:48:58 | krux02 | Do you have a way to download the CI logs to the local machine that doesn't require a browser? |
20:49:03 | shashlick | BTW that Travis script, you need to update the link |
20:49:11 | disruptek | PRs accepted |
20:49:27 | shashlick | You are pointing to a specific commit instead of the latest gist |
20:49:33 | shashlick | Where all are you using it |
20:49:36 | FromDiscord_ | <clyybber> krux02: Is probably possible for sourcehut |
20:49:41 | disruptek | i'm a wildman |
20:49:48 | FromDiscord_ | <clyybber> They have a pretty extensive documentation |
20:50:05 | disruptek | krux02: tell me what you want. i have a ticket to add such a feature to nimph. |
20:50:29 | disruptek | personally, i just want to dump the log in my console. |
20:50:53 | krux02 | disruptek, well ultimatively I want to work browserless |
20:51:12 | * | thomasross_ joined #nim |
20:51:12 | * | thomasross is now known as Guest10586 |
20:51:12 | disruptek | shashlick: 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:16 | krux02 | meaning the browser is only for reading documentation |
20:51:20 | disruptek | krux02: of course. |
20:51:35 | krux02 | but answering issues, dealing with PR etc should work all locally. |
20:51:43 | disruptek | if you are happy with console dumps, i can help with that. |
20:51:46 | FromDiscord_ | <sveri> Hi, it's me again trying to get a multi threaded server running together with async. |
20:51:46 | FromDiscord_ | <sveri> While I can manage to start multiple servers in threads, whenever I run requests against it, only one server responds. |
20:51:46 | FromDiscord_ | <sveri> This is the code as short as possible: https://pastebin.com/kQegWEjt |
20:51:46 | FromDiscord_ | <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:55 | shashlick | https://gist.github.com/genotrance/fb53504a4fba88bc5201d3783df5c522/raw/travis.sh |
20:52:19 | FromDiscord_ | <clyybber> krux02: Too late, work on ryu has started :p |
20:52:51 | * | marmotini_ joined #nim |
20:52:56 | krux02 | clyybber: I am not againt a port of ryu |
20:53:06 | krux02 | I just don't really see the need to maintain it in the compiler. |
20:53:23 | disruptek | agree. |
20:53:37 | FromDiscord_ | <Recruit_main_70007> ok, i fixed it, i was using a choosenim i had, now it works, thank you! |
20:53:46 | FromDiscord_ | <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:00 | krux02 | well my PR to increase the precision of floating point numbers when printed got reverted quickly. |
20:54:12 | FromDiscord_ | <clyybber> yeah |
20:54:32 | FromDiscord_ | <clyybber> with ryu we can be less verbose but still precise enough |
20:54:43 | krux02 | yea |
20:54:55 | krux02 | I think it is a pointless battle here. |
20:55:06 | krux02 | I am just telling my opinion here. |
20:55:07 | * | marmotini_ joined #nim |
20:55:28 | FromDiscord_ | <clyybber> sure, your opinion is valued |
20:55:45 | krux02 | And 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:00 | FromDiscord_ | <clyybber> understandable |
20:56:04 | FromGitter | <kristianmandrup> What is best way to add extra options here? |
20:56:07 | FromGitter | <kristianmandrup> ```var p = newProc(oldProc.g, oldProc.module, prc.ast, prc.options)``` |
20:56:29 | FromGitter | <kristianmandrup> I think it is some kind of set operation? |
20:56:36 | FromDiscord_ | <clyybber> krux02: Btw, are you working at some university? |
20:56:47 | FromGitter | <kristianmandrup> `TOptions* = set[TOption]` |
20:56:51 | krux02 | clyybber: no I don't |
20:57:00 | krux02 | I am currently working only on my own project. |
20:57:10 | FromDiscord_ | <clyybber> oh, what is it? |
20:57:11 | krux02 | Doesn't produce money though. |
20:57:31 | shashlick | sveri asyncCheck not waitFor |
20:57:52 | FromGitter | <kristianmandrup> https://nim-lang.org/docs/sets.html |
20:58:04 | krux02 | Well it is a project with a friend from Aachen, he had this idea for funding OpenSource projects. |
20:58:04 | shashlick | Well maybe not |
20:58:16 | FromDiscord_ | <clyybber> openselery? |
20:58:20 | krux02 | yes |
20:58:29 | krux02 | it is very rough yet. |
20:58:35 | FromDiscord_ | <clyybber> openselery? |
20:58:41 | krux02 | yes |
20:58:43 | FromDiscord_ | <clyybber> nice name, I like sellerie |
20:58:50 | disruptek | openselery? |
20:59:10 | krux02 | yea the name was picked because it was still free, and I like the pun |
20:59:20 | FromDiscord_ | <sveri> shashlick: then the program ends instantly |
20:59:39 | krux02 | most open source projects have shitty names that nobody can remember. That one is easy to remember because of the pun |
20:59:58 | disruptek | ahh, like oliver. |
21:00:03 | shashlick | Ya that's not right |
21:00:12 | FromDiscord_ | <clyybber> krux02: btw, has the storm hit you yet? |
21:00:21 | FromGitter | <kristianmandrup> Have yet to find a good Nim tutorial on sets |
21:00:34 | krux02 | clyybber: Well kind of. |
21:00:41 | krux02 | I had higher expectations. |
21:00:54 | FromDiscord_ | <clyybber> damnit |
21:00:59 | FromDiscord_ | <clyybber> i was begging for havoc |
21:01:01 | krux02 | I stayed home because of the storm, and then it was just very windy |
21:01:21 | krux02 | but it was nice to get fresh air in my living room. |
21:01:25 | FromDiscord_ | <clyybber> haha |
21:02:36 | krux02 | Does anyone from you have a job offer for me? |
21:03:03 | FromGitter | <kristianmandrup> Is this valid `var p = newProc(oldProc.g, oldProc.module, prc.ast, prc.options + {optSections)` |
21:03:18 | krux02 | I would like to get payed to develop in Nim. but I can also do Go, Scala, C++, emacs-lisp (:P) etc |
21:03:24 | FromGitter | <kristianmandrup> if `optSections` is part of `TOption` for set[TOptions] |
21:04:22 | FromDiscord_ | <clyybber> krux02: maybe status is hiring |
21:04:42 | FromDiscord_ | <clyybber> (i don't know if they are, but they are the first thing that comes to mind for nim jobs) |
21:05:26 | FromGitter | <kristianmandrup> `prc.options + optSections` ?? where `options*: TOptions` and `TOption` contains ` optSections` as a flag/option |
21:05:30 | krux02 | kristianmandrup: 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:18 | FromGitter | <kristianmandrup> so how do I add a bit to it? normally would just be + then |
21:06:32 | FromGitter | <kristianmandrup> bit flag, like xor in the old days I believe |
21:06:39 | krux02 | there is `incl` proc for it |
21:07:08 | krux02 | I think you can just add two sets togething with + |
21:07:46 | krux02 | there is also the `*` operator which does a bitwise multiplication if that makes senes. |
21:07:48 | FromGitter | <kristianmandrup> I get `undeclared identifier` |
21:07:56 | FromDiscord_ | <clyybber> krux02: I think instead of changing stringification procs to take `var string`, we should do views/lent slices |
21:08:01 | krux02 | myset.incl myFlag |
21:08:08 | FromDiscord_ | <clyybber> that should get rid of the unneccessary copying afaict |
21:08:19 | FromGitter | <kristianmandrup> So I need to import `TOptions` or `TOption` somehow? |
21:08:38 | disruptek | * for sets does intersection. |
21:08:45 | krux02 | sets in nim are a typesafe version of the flags in C. |
21:09:11 | FromGitter | <kristianmandrup> In `ast.nim` `options*: TOptions` is exported |
21:09:21 | krux02 | you don't need to manually bitshift anymore etc |
21:09:22 | FromDiscord_ | <clyybber> kristianmandrup: You can also do someSet + {someElem} I think |
21:10:51 | krux02 | no you don't need to import TOption or TOptions |
21:11:07 | krux02 | you need to import the module, then you have everything from the module in scope. |
21:11:50 | krux02 | clyybber: what do you mean with views/lent slices? How does that help? |
21:12:08 | FromDiscord_ | <clyybber> disruptek: Something is eating the stacktraces, I don't see where it the oob errors come from |
21:12:19 | FromGitter | <kristianmandrup> turned out there were multiple `TOption` type defs. Added it to wrong one |
21:12:41 | krux02 | kristian: what are you working on? |
21:12:47 | FromDiscord_ | <clyybber> krux02: I mean, if we can alias/borrow slices of strings instead of copying |
21:13:08 | FromDiscord_ | <clyybber> I think hes working on javascript emit improvements? right? |
21:15:16 | FromGitter | <kristianmandrup> @FromDiscord - Exactly |
21:15:47 | FromGitter | <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:52 | disruptek | clyybber: gonna put the table tests in; i found a couple bugs already. |
21:18:37 | FromDiscord_ | <clyybber> aight |
21:18:41 | krux02 | clyybber: 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:23 | FromGitter | <kristianmandrup> But I think should be in `genModule` |
21:19:24 | krux02 | if you use `stream` instead of `var string` you can even get rid of all intermediate string allocations. |
21:19:27 | FromGitter | <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:24 | FromGitter | <kristianmandrup> Is there a better way? |
21:21:24 | * | marmotini_ joined #nim |
21:21:27 | FromGitter | <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:09 | krux02 | p.prc.options.incl optSections |
21:24:05 | FromGitter | <kristianmandrup> yeah, I get illegal storage attempt - since it is a const? |
21:24:14 | FromGitter | <kristianmandrup> `SIGSEGV: Illegal storage access. (Attempt to read from nil?)` |
21:24:24 | FromGitter | <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:50 | krux02 | when I get segfault, I run the compiler in a debugger |
21:28:04 | krux02 | koch temp |
21:28:31 | krux02 | nim-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:36 | Zevv | waait 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:23 | FromDiscord_ | <clyybber> krux02: When we append we must allocate? How else would we do it? |
21:35:32 | FromDiscord_ | <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:00 | FromGitter | <kristianmandrup> How do I test if a given flag is part of a set (ie. `options`) |
21:40:00 | disruptek | better 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:04 | disruptek | flag in options |
21:40:07 | * | l1x joined #nim |
21:40:08 | disruptek | s/in a possible/in a position/ |
21:40:30 | FromGitter | <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:55 | FromGitter | <kristianmandrup> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5e407c6737545d247d2c9b0e] |
21:40:57 | FromGitter | <kristianmandrup> ??? |
21:41:43 | FromGitter | <kristianmandrup> does Nim have null coalescing or some more convenient way to do this? |
21:42:04 | * | FromDiscord joined #nim |
21:42:07 | FromDiscord | <clyybber> disruptek: Where is copy_special_str? |
21:42:21 | disruptek | common |
21:42:26 | * | so quit (Ping timeout: 240 seconds) |
21:42:40 | FromGitter | <kristianmandrup> https://github.com/nim-lang/Nim/issues/13376#issuecomment-583896693 |
21:42:41 | disbot | ➥ Make emit pragma work as expected for JS target with sections ; snippet at 12https://play.nim-lang.org/#ix=2bcp |
21:42:43 | FromDiscord | <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:38 | FromDiscord | <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:29 | FromDiscord | <clyybber> chars[index] = '\0' |
21:48:34 | FromDiscord | <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:42 | FromDiscord | <clyybber> and then the first few tests start to pass |
21:51:46 | FromDiscord | <clyybber> in theory |
21:52:47 | FromDiscord | <clyybber> in practice "0E0" == "0E0" fails |
21:52:48 | FromDiscord | <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:44 | FromDiscord | <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:19 | krux02 | clyybber: appending doesn't require allocation, it does allocate only when the capacity is too small |
22:00:28 | FromDiscord | <clyybber> exaclty |
22:00:45 | * | d10n-work joined #nim |
22:00:59 | krux02 | but that doesn't explain how your slice/view solution should work |
22:01:28 | disruptek | slice/view is a cursor, basically. |
22:01:43 | krux02 | but it can't insert |
22:01:49 | disruptek | that's okay. |
22:02:02 | FromDiscord | <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:38 | disruptek | clyybber: if you have the version of my code that does a setLen then you can omit the terminator. |
22:02:48 | krux02 | sorry, but `&` is one of the worst parts of Nim |
22:03:02 | krux02 | it is the cause of most temporary string allocations |
22:03:13 | FromDiscord | <clyybber> thats the point |
22:03:22 | FromDiscord | <clyybber> with views/slices we could eliminate those |
22:03:40 | krux02 | example please |
22:03:55 | krux02 | because I don't get how views/slices will help here at all. |
22:04:04 | FromDiscord | <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:19 | disruptek | lovely. |
22:04:23 | krux02 | especially because the `formatValue` is almost already exactly what we need. |
22:04:41 | FromDiscord | <clyybber> krux02: Instead of copying strings around we move pointer+len pairs around |
22:04:51 | FromDiscord | <clyybber> If its safe to do |
22:04:51 | disruptek | krux02: a = x + y could be rewriten as x.add y, a <- x |
22:05:37 | * | d10n-work quit (Excess Flood) |
22:05:39 | disruptek | er, throw a & in there somewhere. |
22:06:09 | FromDiscord | <clyybber> hmm, right. When we now its a last read we can do it inplace |
22:06:17 | FromDiscord | <clyybber> *last use |
22:06:39 | * | d10n-work joined #nim |
22:06:44 | disruptek | clyybber: i think when this code is converted to nim, some of these tests will magically work. |
22:06:55 | FromDiscord | <clyybber> it is converted to nim |
22:07:05 | FromDiscord | <clyybber> but the setLen is a bit unneccessary I think |
22:07:07 | disruptek | i mean, we're doing things like setting string indices manually, etc. |
22:07:11 | FromDiscord | <clyybber> result.setLen 16 I mean |
22:07:16 | FromDiscord | <clyybber> disruptek: Ah, sure |
22:07:35 | disruptek | i had to assert there was enough memory in there. |
22:07:44 | disruptek | i 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:35 | krux02 | clyybber: I am personally a fan of `reserve` in std::vector (c++) |
22:08:49 | krux02 | I asked a long time ago to get the same in nim, but without success. |
22:09:14 | disruptek | that's only the second time i've heard someone ask for that feature. |
22:09:35 | krux02 | well, I asked for it alreay very early. |
22:10:02 | krux02 | and I don't understand why the capacity of a seq is a secret that you can't get |
22:10:30 | Araq | well there is newSeqOfCap, that's why |
22:11:38 | disruptek | 0x96440440 has >32 bits. yet it's a constant in a uint32 array in ryu. what am i missing... |
22:11:56 | disruptek | er, it's 32b. i guess something is b0rked. |
22:12:39 | disruptek | i guess one has to 'u32 it for some reason. |
22:14:12 | * | thomasross quit (Quit: Leaving) |
22:14:35 | krux02 | clyybber: 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:06 | krux02 | disrupteck 0x96440440 has exactly 32 bits |
22:16:11 | disruptek | yes. |
22:16:27 | krux02 | it doesn't fit in i32, but it does fit in u32 |
22:16:34 | FromDiscord | <clyybber> im really going crazy |
22:16:53 | disruptek | but 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:03 | FromDiscord | <clyybber> oh, its nulls not space |
22:19:17 | krux02 | disruptek, that is because of how literals work I think. |
22:19:32 | disruptek | yes, it makes me sad. |
22:19:50 | * | ltriant joined #nim |
22:20:17 | disruptek | it's because of how literals /don't/ work. 😉 |
22:24:47 | FromDiscord | <clyybber> disruptek: with this a few tests pass |
22:25:18 | FromDiscord | <clyybber> but I don't exactly get why the 16 chars are needed when it appends the 3 anyways |
22:26:35 | FromDiscord | <clyybber> http://ix.io/2bg9 |
22:27:31 | disruptek | i'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:47 | disruptek | i can only do 128bit stuff in the vm, right? |
22:50:58 | Araq | no, but it's in compiler/int128 |
22:51:12 | disruptek | ah, thanks. |
22:51:58 | FromDiscord | <clyybber> disruptek: what for? |
22:54:20 | disruptek | i need to do some shifts, multiplies, etc. |
22:54:41 | FromDiscord | <clyybber> yeah, but why 128 |
22:54:43 | FromDiscord | <clyybber> bit |
22:54:52 | FromDiscord | <clyybber> ryu doesn't use 128 bits either? |
22:56:06 | disruptek | no, it uses eg. umul128 |
22:56:18 | disruptek | i want a nim equivalent. |
22:58:03 | disruptek | high64 and low64, ya feel me? |
22:58:41 | FromDiscord | <clyybber> oh |
22:58:42 | FromDiscord | <clyybber> yeye |
23:00:09 | disruptek | 🙁 ++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:31 | stefantalpalaru | Is 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:11 | Araq | well 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) |