<< 09-09-2022 >>

00:23:59*derpydoo joined #nim
00:56:59*jmdaemon joined #nim
00:58:11FromDiscord<B L Â D É> I'm experiencing something weird, I thought arrays will be faster than seq but seq is about 1.5 times faster!↵Both preallocating 1024 objects using array[1024] and newSeq(1024)
00:58:47FromDiscord<Elegantbeef> Code?
00:59:07FromDiscord<Elegantbeef> Also you're timing in release?
00:59:30FromDiscord<B L Â D É> In reply to @Elegantbeef "Also you're timing in": danger
01:00:09FromDiscord<B L Â D É> sent a code paste, see https://paste.rs/46v
01:00:27FromDiscord<B L Â D É> This is the seq version
01:00:58FromDiscord<B L Â D É> sent a code paste, see https://play.nim-lang.org/#ix=49ZH
01:01:12FromDiscord<B L Â D É> seq are noticeably faster
01:01:26*jmdaemon quit (Client Quit)
01:02:29FromDiscord<Elegantbeef> They certainly shouldnt be any faster here
01:02:43FromDiscord<Elegantbeef> Can you throw the benchmark somewhere?
01:03:08*jmdaemon joined #nim
01:03:40FromDiscord<B L Â D É> sent a code paste, see https://play.nim-lang.org/#ix=49ZI
01:03:47FromDiscord<Elegantbeef> That's not the benchmark
01:07:09FromDiscord<Elegantbeef> Actually it might be due to how you have your object layed out
01:07:15FromDiscord<Elegantbeef> move the stack to the last position in the object
01:08:12FromDiscord<B L Â D É> sent a code paste, see https://play.nim-lang.org/#ix=49ZK
01:08:13FromDiscord<Elegantbeef> Yea
01:08:19FromDiscord<Elegantbeef> I doubt it'll change anything but just an idea
01:10:59FromDiscord<B L Â D É> IT CHANGED
01:11:00FromDiscord<B L Â D É> sent a code paste, see https://play.nim-lang.org/#ix=49ZL
01:11:03FromDiscord<B L Â D É> What?
01:11:22FromDiscord<B L Â D É> seq are still faster though (by a tiny bit)
01:11:27FromDiscord<B L Â D É> but why is that
01:11:37FromDiscord<B L Â D É> This seems really weird to me
01:12:46FromDiscord<Elegantbeef> My idea with the array at the end was to change how accessing fields were done, so that when you accessed VM fields all were at the pointer
01:13:01FromDiscord<Elegantbeef> You now likely get most if not all of the fields in a single cache line
01:13:27FromDiscord<Elegantbeef> Without having the entire code to look at/profile it's hard to say why it's slower
01:13:35FromDiscord<Elegantbeef> Other than allocation they should be identical
01:13:52FromDiscord<Elegantbeef> If anything the seq should be slightly slower due to the pointer indirection
01:14:26FromDiscord<B L Â D É> In reply to @Elegantbeef "If anything the seq": Yes that's what i thought
01:14:47FromDiscord<Elegantbeef> What memory management are you using?
01:15:05FromDiscord<B L Â D É> Anyways i'll get the repo ready tomorrow if u want to have a look
01:15:12FromDiscord<B L Â D É> In reply to @Elegantbeef "What memory management are": Orc
01:15:22FromDiscord<B L Â D É> Refc is waaaaay slower
01:15:48FromDiscord<B L Â D É> It's actually worse than golang in some situations
01:15:58FromDiscord<Elegantbeef> Eh it's tunable
01:16:52FromDiscord<halc> is there a specific use case where refc is better?
01:17:17FromDiscord<B L Â D É> In reply to @halc "is there a specific": On the official website they suggest u to use orc for newer projects
01:17:19FromDiscord<Elegantbeef> Arc/Orc have lower latency but lower throughput
01:17:34FromDiscord<B L Â D É> It will be the default in the future
01:17:55FromDiscord<Elegantbeef> So if your only goal is to get a lot of work done in a short period, refc might be faster
01:18:18FromDiscord<B L Â D É> https://nim-lang.github.io/Nim/mm.html
01:18:52FromDiscord<Elegantbeef> Arc/Orc are generally faster than the conventional GC, but there are some cases where they may not be
01:19:14FromDiscord<Elegantbeef> A big benefit of arc/orc is that they have move semantics so you can reuse memory more which is one place where the speed comes in
01:19:53FromDiscord<B L Â D É> And the shared heap stuff if i'm not mistaken
01:20:07FromDiscord<Elegantbeef> Shared heap only matters for threading, so it's a moot point 😄
01:20:25FromDiscord<Elegantbeef> Due to Nim's allocator you lose performance turning on threads
01:21:04FromDiscord<Elegantbeef> mimalloc resolves most of this loss though, so when threads are the default it's likely Nim will have a new internal allocator
01:21:12FromDiscord<Elegantbeef> threads are default for devel presently
01:23:10FromDiscord<halc> In reply to @Elegantbeef "Due to Nim's allocator": oh yeah, I noticed how just turning threads on drastically decreases performance lol
01:23:26FromDiscord<Elegantbeef> https://github.com/Yardanico/mimalloc_nim#performance
01:25:12*alice quit (Killed (lithium.libera.chat (Nickname regained by services)))
01:25:16*alice joined #nim
01:26:42FromDiscord<B L Â D É> https://media.discordapp.net/attachments/371759389889003532/1017606942883061803/Screenshot_2022-09-09-03-26-28-81_320a9a695de7cdce83ed5281148d6f19.jpg
01:26:52FromDiscord<B L Â D É> In reply to @halc "oh yeah, I noticed": Try this
01:28:05FromDiscord<halc> In reply to @B L Â D É "Try this": oh I'm not doing thread stuff anymore, I do remember trying that with no results though
01:28:33FromDiscord<halc> and I was just toying anyways
01:37:34*arkurious quit (Quit: Leaving)
01:38:59*alice is now known as Guest8251
01:39:00*Guest8251 quit (Killed (calcium.libera.chat (Nickname regained by services)))
01:39:02*alice joined #nim
01:50:39*tinystoat quit (Remote host closed the connection)
01:50:48*tinystoat joined #nim
01:51:26*koltrast quit (Quit: ZNC - http://znc.in)
01:51:47*koltrast joined #nim
01:57:24*monkeybusiness quit (Quit: Leaving)
02:08:07*alice quit (Remote host closed the connection)
02:10:50*alice joined #nim
02:11:09*lain quit (Ping timeout: 252 seconds)
02:12:39*lain joined #nim
02:30:36FromDiscord<Hapenia> Hi, anyone know about `concept`? Does `concept` stable enough? Do we have any plan to rewrite stdlib by `concept`?
02:34:45FromDiscord<Elegantbeef> Yes many know about concept, it's stable enough presently for many things, i hope the stdlib will embrace it.
02:34:56*derpydoo quit (Quit: derpydoo)
03:19:45*jmdaemon quit (Quit: ZNC 1.8.2 - https://znc.in)
03:48:33FromDiscord<Patitotective> 🌃
03:58:52*jmdaemon joined #nim
04:39:47NimEventerNew question by Ciro Garc&#237;a: Nim ignores variable assignment, see https://stackoverflow.com/questions/73657380/nim-ignores-variable-assignment
04:40:21FromDiscord<ravinder387> `var e = newSeq[int]()↵for i in 1..5:↵ e.add(rand(100))↵echo e `
04:40:51FromDiscord<ravinder387> @[3, 43, 26, 95, 55]
04:41:10FromDiscord<ravinder387> every time i compile again again... i got same seq
04:41:38FromDiscord<ravinder387> is rand() really a random number generator
04:41:40FromDiscord<Prestige> Look at the example on https://nim-lang.org/docs/random.html
04:41:41FromDiscord<Yardanico> Because the seed is the same
04:41:48FromDiscord<Prestige> You need to call `randomize()`
05:38:21FromDiscord<ravinder387> {"data" : [1,2,3]} --> how to get array from json in nim
05:45:22FromDiscord<Josef> Is there a 1-1 correspondence between nim and c++ classes, inheritance, virtuals and/or methods?
05:45:42FromDiscord<Josef> (In terms of ABI compatibility)
05:46:02FromDiscord<Josef> (edit) "ABI compatibility)" => "assembly representation.)"
05:46:22FromDiscord<Rika> not at all i believe
06:22:31FromDiscord<ravinder387> In reply to @Rika "not at all i": r u german
06:22:46*PMunch joined #nim
06:24:21FromDiscord<Rika> no
06:30:48FromDiscord<retkid> is there anyway to get all functions in a nim file in a macro
06:30:51NimEventerNew thread by miran: Nim 1.6.8 release candidate, see https://forum.nim-lang.org/t/9451
06:31:27PMunchI don't think so unfortunately
06:32:19FromDiscord<retkid> i wanna make a macro to automatically get file dependencies
06:32:34FromDiscord<retkid> is there anyway to get the name of the file
06:32:52FromDiscord<retkid> i guess i can statically link them
06:33:11FromDiscord<retkid> but i wanna make a macro to replace the dynamic linking with static
06:33:12FromDiscord<retkid> .-.
06:42:05FromDiscord<Yardanico> In reply to @ravinder387 "{"data" : [1,2,3]} ": std/json module
07:36:58*sagax quit (Ping timeout: 240 seconds)
07:46:33*rockcavera quit (Remote host closed the connection)
08:02:25*m5zs7k quit (Ping timeout: 252 seconds)
08:03:01PMunch@retkid, I mean you can call `nim jsondoc` on the file :P
08:03:09PMunchAnd get the exported procedures at least
08:04:13PMunchI guess you could technically alse parseStmt(staticRead(instantiationInfo().filename))
08:04:20*m5zs7k joined #nim
08:11:13PMunchHmm, hard to get procs created by a macro though..
08:11:29PMunchBecause if you parse it as typed then you get errors about redifinitions :P
08:12:36FromDiscord<Elegantbeef> There isnt really any sensible way to query all symbols exported by a import
08:20:20FromDiscord<retkid> I want it to be like
08:21:10FromDiscord<retkid> "this readfile / create file stream proc is pretty cool, lets remove that, statically read the file, and replace it with a string stream or just the file contents"
08:21:23FromDiscord<retkid> but only on release / danger builds
08:25:09NimEventerNew thread by pusewicz: Bindings for imtui, see https://forum.nim-lang.org/t/9452
08:39:36FromDiscord<loaf> whats nims js performance like compared to wasm
08:40:45FromDiscord<Rika> Same as any other JS versus WASM
08:40:57FromDiscord<Rika> At least I do not expect a difference
08:41:21FromDiscord<enthus1ast> i think it also depends if you use browser native api or a pure nim one
08:41:22FromDiscord<Rika> What does that mean anyway? WASM can be both faster and slower than JS in certain contexts
08:41:49FromDiscord<loaf> because the entire point in wasm is to compile to more performant js
08:42:15FromDiscord<Rika> WASM doesn’t compile to JS I believe
08:42:29FromDiscord<loaf> i thought wasm was a js and c glue
08:42:52FromDiscord<Rika> WASM is a separate VM to JS
08:50:40FromDiscord<retkid> the only reason I'd use wasm and not js is for better preformancde
08:50:43FromDiscord<retkid> (edit) "preformancde" => "performance"
08:50:49FromDiscord<retkid> js is just easier
08:51:10FromDiscord<retkid> i suppose thats what loaf means as well
09:33:05FromDiscord<mratsim> In reply to @retkid "the only reason I'd": Some stuff are easier to translate to wasm than to JS because wasm is lower-level vwith basic primitives while JS brings it's own bagage.
09:33:31FromDiscord<retkid> i mean JS itself
09:33:34FromDiscord<mratsim> like you can compile a Nim program that uses raw pointers to WASM
09:33:55FromDiscord<retkid> given the chance to do stuff in webdev i'd rather write JS then compile with nim
09:36:05FromDiscord<Phil> If I have to do a reactive frontend, give me HTML, CSS and RXJS, it just works pretty dang well
09:37:38FromDiscord<mratsim> If I had to do a reactive frontend, I'll just hire someone to do it for me 😛
09:37:59FromDiscord<retkid> now
09:38:03FromDiscord<retkid> i cant do it either because i cant design
09:38:20FromDiscord<retkid> but i can do the frontend if you get a designer
09:38:22FromDiscord<Phil> Ehhhh it's not that hard to get an okay feeling for design
09:38:34FromDiscord<retkid> I've tried I just am not good at it
09:38:48FromDiscord<retkid> i can get everything to work usually
09:38:49FromDiscord<retkid> just like
09:38:51FromDiscord<retkid> it looks horrible
09:38:58FromDiscord<Phil> A lot of it is not getting seduced by the bells and whistles you have access to just for the sake of it
09:39:28NimEventerNew thread by noober: Nim Compiler Issues, see https://forum.nim-lang.org/t/9453
09:39:31FromDiscord<retkid> oh yea
09:39:37FromDiscord<retkid> staring into the black maw of CSS
09:39:45FromDiscord<retkid> is terrifying
09:39:47FromDiscord<Phil> ~~To this day I regret making my sidebar expand on hover but it's still the best solution I've got so far~~
09:40:13FromDiscord<retkid> doing anything in CSS is horrible
09:40:21FromDiscord<retkid> not necessarily because its bad
09:40:22FromDiscord<retkid> it is
09:40:26FromDiscord<retkid> but because you can do anything
09:40:27FromDiscord<Phil> That I disagree, CSS is not fun by any means but it's not terrifying
09:40:47FromDiscord<retkid> it scares me because its so open and free
09:40:49FromDiscord<retkid> you can do anything
09:40:53FromDiscord<retkid> so many ways to do anything
09:41:22FromDiscord<retkid> its paralyzing
09:41:51FromDiscord<Phil> And the funny thing is some of them are objectively wrong given the circumstances... but eh, it's still manageable imo
10:09:36NimEventerNew thread by archnim: Strange issue with readline, see https://forum.nim-lang.org/t/9454
10:12:44FromDiscord<Rika> It’s a bit hard to answer why to that question but the simple answer is that the program needs to handle it I believe
10:13:02FromDiscord<Yardanico> i already answerred with rstdin :)
10:25:29*monkeybusiness joined #nim
10:25:29*monkeybusiness quit (Changing host)
10:25:29*monkeybusiness joined #nim
10:28:10FromDiscord<dom96> In reply to @retkid "the only reason I'd": wasm isn't always faster than JS funnily enough
10:36:57FromDiscord<ravinder387> In reply to @dom96 "wasm isn't always faster": so every nim libraries able to compile to js and run entirely on browser
10:37:19FromDiscord<ravinder387> can i run ArrayMancer library on browser through javascript
10:37:56FromDiscord<dom96> no, every library can't
10:38:39FromDiscord<Rika> In reply to @ravinder387 "can i run ArrayMancer": Unlikely
10:41:57FromDiscord<ravinder387> In reply to @Rika "Unlikely": what's ur nim frontend and backend stack/libraries
10:42:34FromDiscord<Rika> I don’t do front end
10:43:15FromDiscord<Rika> There’s not a lot of backend stuff to choose from really so I don’t know why you’d ask me
10:43:26FromDiscord<Rika> I’d prolly use prologue for a new project
10:43:42FromDiscord<enthus1ast> for web\:↵(asynchttpserver or prologue or jester) + nimja + nisane
10:44:04FromDiscord<enthus1ast> but i mostly do non spa's
10:44:17FromDiscord<ravinder387> In reply to @enthus1ast "for web\: (asynchttpserver or": nice
10:44:55FromDiscord<enthus1ast> others also use norm as an orm (but i like the more rough approach more
10:45:09FromDiscord<enthus1ast> so db libs directly + seq unpacking with nisane
10:46:09FromDiscord<ravinder387> it is written in nim website you can write frontend and backend in nim that's why I'm asking to people
10:46:43FromDiscord<enthus1ast> you can compile to js, so you can just wrap your favourite js stuff
10:46:56FromDiscord<ravinder387> In reply to @enthus1ast "you can compile to": how
10:47:04FromDiscord<enthus1ast> nim js yourfile.nim
10:47:29FromDiscord<enthus1ast> https://nim-lang.org/docs/backends.html#backends-the-javascript-target
10:54:58FromDiscord<retkid> i'd just use svelte for a frontend
10:55:38FromDiscord<enthus1ast> OR build a nice gui with imgui
11:00:51PMunchCome on guys, not a single game written in Nim? https://wasm4.org/blog/jam-2-results/
11:07:44FromDiscord<Rika> You do it smh
11:09:59FromDiscord<dom96> Nim doesn't have first-class WASM support
11:10:59PMunchYeah but you can go the Nim -> C -> WASM route right?
11:34:51FromDiscord<Yardanico> In reply to @dom96 "Nim doesn't have first-class": i contributed wasm support to wasm4, it just uses WASI SDK (which is clang with some specific libs) and it compiles fine
11:35:28FromDiscord<Yardanico> I don't really think that Nim not having a "direct" WASM backend changes anything in regards to writing games via wasm4
11:38:27FromDiscord<b1rdf00d> In reply to @PMunch "Yeah but you can": Tom (from Context Free, I think the creator of WASM-4?) made a Nim game in the first jam
11:39:41PMunchoh cool
11:40:11FromDiscord<Yardanico> In reply to @b1rdf00d "Tom (from Context Free,": he didn't make wasm4, he just kinda found it out or something :)
11:40:31FromDiscord<Yardanico> "And thanks much to Bruno for making WASM-4 and for helping with this video and the jam!"
11:40:51FromDiscord<retkid> whats the generic for any kind of object which has []
11:40:52FromDiscord<b1rdf00d> In reply to @Yardanico ""And thanks much to": yeah that's it, I wasn't sure if he was a co-creator
11:40:54FromDiscord<retkid> (edit) "[]" => "[int]"
11:41:09FromDiscord<retkid> ie strings or any kind of array
11:41:15FromDiscord<Yardanico> In reply to @retkid "whats the generic for": huh?
11:41:22FromDiscord<Yardanico> ah, you want subscript operator
11:41:28FromDiscord<Yardanico> just check with a concept or `when compiles`
11:41:41FromDiscord<retkid> i want it in a procedure
11:41:51FromDiscord<retkid> as a paramater .-.
11:41:53FromDiscord<retkid> (edit) "paramater" => "parameter"
11:41:58FromDiscord<Yardanico> then do it with a concept
11:42:45FromDiscord<retkid> I have just heard of the word concept
11:43:01FromDiscord<Yardanico> https://nim-lang.org/docs/manual_experimental.html#concepts
11:43:36FromDiscord<Yardanico> also this is using old concept syntax
11:43:37FromDiscord<Yardanico> sent a code paste, see https://play.nim-lang.org/#ix=4a1A
11:44:09*jmdaemon quit (Ping timeout: 268 seconds)
11:50:10FromDiscord<retkid> sent a code paste, see https://play.nim-lang.org/#ix=4a1B
11:50:59FromDiscord<retkid> i dont know why i'd ever use a concept besides htis
11:51:02FromDiscord<retkid> (edit) "htis" => "thi"
11:51:14FromDiscord<retkid> (edit) "thi" => "this"
11:51:18FromDiscord<retkid> but I'll keep it in mind
11:54:03FromDiscord<retkid> oo i really like the "do" I'll need to find some way to use that
12:13:08*monkeybusiness quit (Ping timeout: 268 seconds)
12:26:21*arkurious joined #nim
12:58:22FromDiscord<dom96> In reply to @Yardanico "i contributed wasm support": Then it's a case of community engagement. Zig has a full-time community manager that from what I've seen advertises this game jam.
13:00:18FromDiscord<Yardanico> yes, I was just confused as to why you brought up WASM support regarding the fact that no one made Nim games for that jam :)
13:04:56FromDiscord<flywind> It seems better to revert #19119 before 1.6.8 release since it is a surprising regression => https://github.com/nim-lang/Nim/pull/20327
13:06:48FromDiscord<aph> should i use winlean/winim is there some situations where one is better than another?
13:06:52FromDiscord<aph> (edit)
13:06:54FromDiscord<aph> (edit) removed "when"
13:06:57FromDiscord<aph> (edit) "winlean/winim" => "winlean/winim,"
13:07:02FromDiscord<aph> (edit) "is" => "are"
13:07:21PMunchPlease try to refrain from editing your message too much
13:07:28PMunchIt causes a lot of noise in the IRC room :)
13:07:53FromDiscord<aph> sorry :(
13:08:56FromDiscord<Yardanico> In reply to @aph "should i use winlean/winim,": just use winim, it's much more extensive and covers more APIs
13:08:58PMunchI guess you can find the answer by reading the documentation for each, winlean: "This module implements a small wrapper for some needed Win API procedures, so that the Nim compiler does not depend on the huge Windows module."; winim: "Winim contains Windows API, struct, and constant definitions for Nim. The definitions are translated from MinGW's Windows headers and Windows 10 SDK headers."
13:09:15PMunchSo winlean is basically just a subset of the Windows API that the compiler needs
13:09:33FromDiscord<aph> oh, i guess i'll use winim, thanks
13:16:59*dv^_^ quit (Read error: Connection reset by peer)
13:31:18FromDiscord<! Nilts> sent a code paste, see https://play.nim-lang.org/#ix=4a1U
13:31:59*monkeybusiness joined #nim
13:31:59*monkeybusiness quit (Changing host)
13:31:59*monkeybusiness joined #nim
13:32:05FromDiscord<! Nilts> sent a code paste, see https://play.nim-lang.org/#ix=4a1V
13:33:06FromDiscord<Rika> did you import the module with xml handling
13:34:32FromDiscord<! Nilts> oh
13:35:10FromDiscord<! Nilts> sent a code paste, see https://play.nim-lang.org/#ix=4a1X
13:37:18FromDiscord<! Nilts> sent a code paste, see https://play.nim-lang.org/#ix=4a1Z
13:38:43*monkeybusiness quit (Ping timeout: 248 seconds)
13:39:06FromDiscord<Yardanico> you need to `import std/strtabs`
13:39:11FromDiscord<Yardanico> https://media.discordapp.net/attachments/371759389889003532/1017791282959089756/unknown.png
13:39:30*dv^_^ joined #nim
13:44:24FromDiscord<! Nilts> ok
14:33:02*PMunch quit (Quit: Leaving)
15:00:40ehmrywhat should I do when I see `Warning: method has lock level <unknown>, but another method has 0 [LockLevel]`?
15:04:07FromDiscord<dlesnoff> sent a long message, see http://ix.io/4a2N
15:05:04FromDiscord<dlesnoff> (edit) "http://ix.io/4a2N" => "http://ix.io/4a2Q"
15:05:20FromDiscord<dlesnoff> (edit) "long message," => "code paste," | "http://ix.io/4a2Q" => "https://play.nim-lang.org/#ix=4a2S"
15:05:52FromDiscord<dlesnoff> (edit) "https://play.nim-lang.org/#ix=4a2S" => "https://play.nim-lang.org/#ix=4a2U"
15:06:00FromDiscord<Yardanico> I don't know that stuff well, but maybe https://nim-lang.org/docs/critbits.html is what you need?
15:06:05FromDiscord<Yardanico> "This module implements a crit bit tree which is an efficient container for a sorted set of strings, or for a sorted mapping of strings. Based on the excellent paper by Adam Langley. (A crit bit tree is a form of radix tree or patricia trie.)"
15:09:29FromDiscord<dlesnoff> I am looking into it. It seems just a form of Patricia trie. I am porting algorithms from this repository https://github.com/jilljenn/tryalgo which contains a lot of data structures and algorithms, and part of the implementation of the syntax checker is to have an easy implementation to learn the data structure from the code source.
15:11:41FromDiscord<Yardanico> well I doubt that it'll be that efficient because self.s seems to be using a dictionary, but yeah you can port that to Nim then I guess
15:12:34FromDiscord<Yardanico> and regarding None, you can either just use null character or std/options in this exact case (https://github.com/jilljenn/tryalgo/blob/master/tryalgo/trie.py if someone else wants to look at the code too)
15:19:00FromDiscord<Rika> i was also looking into implementing a trie
15:19:29FromDiscord<Rika> currently thinking of the bitset style implementation
15:20:03FromDiscord<Rika> which i guess wouldnt do ascii too well
15:25:12FromDiscord<Prestige> Is there a `when` equivalent for case statements, or would that happen at compile time anyway if a parameter was `static` ?
15:29:38FromDiscord<dlesnoff> sent a code paste, see https://play.nim-lang.org/#ix=4a2Z
15:31:18FromDiscord<Yardanico> i'm not sure if this is the right way, but I translated the python code for fun:
15:31:27FromDiscord<Yardanico> sent a code paste, see https://play.nim-lang.org/#ix=4a30
15:31:50FromDiscord<Yardanico> although yeah, I used the more "manual" way instead of proper char indexing with `find`ing chars in an array, there's probably a better way
15:32:03FromDiscord<Yardanico> In reply to @Jiezron "Can we index an": I don't think so, since you said yourself it needs to be contiguous
15:32:12FromDiscord<Yardanico> although maybe we can just make an enum of those ascii letters, then we'll be able to
15:33:27FromDiscord<Yardanico> hmm, that won't work too since the enum would have holes
15:34:02FromDiscord<Prestige> Hm there's still no way to do cyclic imports is ther
15:34:05FromDiscord<Prestige> (edit) "ther" => "there"
15:34:27FromDiscord<Yardanico> In reply to @Avahe "Hm there's still no": there is the same old way, you have to structure your code very carefully, so it's limited in practice
15:34:57FromDiscord<Yardanico> you can have circular imports if the child module imports the main module, and the main module has the symbols that the child module uses defined before the main module imports the child module
15:35:22FromDiscord<Yardanico> like in https://github.com/Yardanico/nimeventer/blob/master/src/nimeventer.nim#L83
15:35:38FromDiscord<Prestige> Hm thanks, that helps a bit
15:35:44FromDiscord<Prestige> Hopefully this improves at some point
15:38:21FromDiscord<Prestige> PMunch: Playground down again?
15:38:56FromDiscord<Prestige> We really should have some of the Nim funds go toward a better server for the playground imo
15:40:32FromDiscord<dlesnoff> @PMunch ou @PMunch ping maybe ?
15:42:59FromDiscord<dlesnoff> sent a code paste, see https://play.nim-lang.org/#ix=4a33
15:43:12FromDiscord<Yardanico> In reply to @Jiezron "You have done the": well, that code was pretty simple to begin with, and copilot also helped a bit :)
15:43:47FromDiscord<dlesnoff> In reply to @Avahe "PMunch: Playground down again?": Playground was down a week before
15:43:53FromDiscord<dlesnoff> In reply to @Yardanico "well, that code was": copilot ?
15:43:58FromDiscord<Prestige> dang
15:44:00FromDiscord<Yardanico> GitHub Copilot
15:44:14FromDiscord<Yardanico> https://github.com/features/copilot it works more or less fine for Nim now
15:44:53FromDiscord<Prestige> sent a code paste, see https://play.nim-lang.org/#ix=4a35
16:02:13FromDiscord<dlesnoff> In reply to @Yardanico "https://github.com/features/copilot it works more": The tool is very impressive! Looking forward for my first paycheck to get a subscription 🙂
16:02:26FromDiscord<Yardanico> if you're a student or have a popular open-source project you can get it for free
16:03:12FromDiscord<Rika> sent a code paste, see https://play.nim-lang.org/#ix=4a38
16:03:34FromDiscord<Rika> change the x parameter to a different name
16:03:48FromDiscord<Rika> @Prestige
16:06:36FromDiscord<Prestige> eh
16:11:04FromDiscord<Prestige> Doesn't really help the situation imo
16:11:12FromDiscord<Prestige> the compiler should be able to resolve this
16:14:39FromDiscord<Yardanico> going to do fun stuff with https://github.com/Yardanico/nim-snippets/tree/master/pkgraph again, currently cloning all nimble package repos
16:18:49FromDiscord<Yardanico> 1920 repos with like 30 repos dead (approximately)
16:20:40FromDiscord<!&luke> In reply to @Yardanico "https://github.com/features/copilot it works more": Lmao it'll probably steal my job but it's great while it lasta
16:20:43FromDiscord<!&luke> (edit) "lasta" => "lasts"
16:21:24*jmdaemon joined #nim
16:23:07*rockcavera joined #nim
16:23:07*rockcavera quit (Changing host)
16:23:07*rockcavera joined #nim
16:24:57FromDiscord<Rika> In reply to @Avahe "the compiler should be": how would it
16:25:18FromDiscord<Rika> it is a valid use case to replace both the field name and the value
16:25:27FromDiscord<Rika> how would the compiler distinguish between such
16:25:29FromDiscord<Yardanico> dealing with nimble packages that don't have a .nimble file now, fun :)
16:25:39FromDiscord<Yardanico> at least it's good to know which ones are gone
16:29:32FromDiscord<Yardanico> for anyone wondering (out of nimble repos that can actually be cloned):
16:29:40FromDiscord<Yardanico> sent a code paste, see https://play.nim-lang.org/#ix=4a3c
16:35:43FromDiscord<Yardanico> more fun `A package mctranslog directly depends on mcdb but it's not in Nimble!`
16:39:38*sagax joined #nim
16:54:02FromDiscord<Yardanico> finally parsed
16:54:19FromDiscord<Yardanico> sent a code paste, see https://play.nim-lang.org/#ix=4a3n
16:55:25FromDiscord<Yardanico> now time to import into neo4j and do fun graphs https://media.discordapp.net/attachments/371759389889003532/1017840663695462571/unknown.png
17:06:34FromDiscord<Yardanico> beloved license stats (some licenses are the same but different rows because of different names) - https://gist.github.com/Yardanico/31ff1991566e9850df51af96502ffed9
17:06:52FromDiscord<Yardanico> need to merge all of them so the output is nicer
17:07:19FromDiscord<Yardanico> at least 1 package in nimble is "Proprietary" :P
17:08:07FromDiscord<Rainbow Asteroids> :o
17:08:10FromDiscord<Rainbow Asteroids> heresy
17:08:15FromDiscord<Rainbow Asteroids> im calling stalman
17:12:12FromDiscord<Yardanico> it's https://github.com/al6x/pl0t
17:12:35FromDiscord<Yardanico> https://github.com/al6x/pl0t/tree/main/api/nim specifically
17:12:58FromDiscord<Yardanico> yeah, it's not "proprietary" but the license is a custom one
17:13:01FromDiscord<Yardanico> it's not GPL compatible
17:13:06FromDiscord<Yardanico> "You can't use this product or any of its parts to build similar service and compete with me"
17:13:16FromDiscord<auxym> surprisingly very little (l)gpl
17:13:19FromDiscord<Yardanico> "For commercial businesses with annual sales greather than 1 million USD, the first month is free, after that it's 5 USD per developer per month." does that even work when put in a license?
17:13:27FromDiscord<Yardanico> In reply to @auxym "surprisingly very little (l)gpl": because it generally doesn't make sense for Nim
17:13:31FromDiscord<Yardanico> Nim links all Nim modules statically
17:13:46FromDiscord<auxym> Yeah I know. still a very, very small number
17:14:02FromDiscord<Yardanico> well, Nim likes MIT :P
17:14:41FromDiscord<Rika> In reply to @Yardanico ""For commercial businesses with": why not?
17:14:47FromDiscord<Yardanico> because it's a code license
17:15:01FromDiscord<Yardanico> i don't know if that would work in a court or something
17:15:26FromDiscord<Yardanico> hmm, what else should I check
17:15:34FromDiscord<Yardanico> probably the classic "people with most packages", although I already know the answer
17:15:43FromDiscord<Rika> In reply to @Yardanico "i don't know if": unlikely
17:15:58FromDiscord<Rika> anything custom made that isnt vetted by a lawyer is very unlikely to pass
17:20:32FromDiscord<Yardanico> oh right, forgot about status
17:21:04FromDiscord<Yardanico> https://gist.github.com/Yardanico/20499b8d0f324d2a8b82214a91f990ef top 50 nimble package authors
17:21:12FromDiscord<Yardanico> (the list uses the names from the nimble file, so might be inaccurate of course)
17:35:54FromDiscord<4zv4l> sent a code paste, see https://play.nim-lang.org/#ix=4a3v
17:37:43FromDiscord<4zv4l> or do like this ?
17:37:46FromDiscord<4zv4l> sent a code paste, see https://play.nim-lang.org/#ix=4a3w
17:41:11FromDiscord<Yardanico> std/sequtils zip
17:41:36FromDiscord<Yardanico> although it'll be kinda inefficient since it's not an iterator
17:42:58FromDiscord<auxym> the iterator version is available in https://github.com/def-/nim-iterutils
17:43:30FromDiscord<auxym> it's only like 5 lines, in case you don't want to add an external dep, you could just lift it
17:44:09FromDiscord<Yardanico> warning: big png (10k x 10k pixels), all Nimble packages in a graph with their authors and also with package dependencies (a few packages are probably missing, but most are there)
17:44:10FromDiscord<Yardanico> https://i.imgur.com/0JDd67e.jpg
17:44:14FromDiscord<Yardanico> argh
17:44:15FromDiscord<Yardanico> `https://i.imgur.com/0JDd67e.jpg`
17:44:27FromDiscord<Yardanico> why is it jpg 🤔
17:44:50FromDiscord<Yardanico> nimble package universe https://media.discordapp.net/attachments/371759389889003532/1017853101245481031/unknown.png
17:45:19FromDiscord<Yardanico> the outer belt are packages that don't have much relationships, usually the ones that don't depend on anything and nothing depends on them
17:45:23FromDiscord<Yardanico> or only with a couple dependencies
17:45:42FromDiscord<Yardanico> the packages in the centre of the galaxy are the ones that have a lot of dependencies, or a lot of stuff depends on them
17:45:55FromDiscord<Yardanico> https://media.discordapp.net/attachments/371759389889003532/1017853371530608690/unknown.png
17:46:29FromDiscord<Yardanico> i guess I should make a forum post, but first I need to make stuff a little better, like merge the licenses, and fix a couple of other things
17:46:34FromDiscord<enthus1ast> Nice @Yardanico
17:46:36FromDiscord<Yardanico> with json file as well (neo4j has that)
17:47:12FromDiscord<Yardanico> the current full graph in json (22mb) - https://gofile.io/d/OkVPxb
17:47:16FromDiscord<enthus1ast> maybe when the pkgname is an url, just use the last part, so that its not "http://git"
17:47:31FromDiscord<Yardanico> hm? it shouldn't be like that
17:47:48FromDiscord<Yardanico> although neo4j json export seems to be weird
17:48:17FromDiscord<Yardanico> In reply to @enthus1ast "maybe when the pkgname": ah you mean not the full url
17:48:25FromDiscord<enthus1ast> yeah
17:48:27FromDiscord<Yardanico> I thought it'd be cleaner to use the full URL to see non-nimble deps
17:48:28FromDiscord<enthus1ast> image.png https://media.discordapp.net/attachments/371759389889003532/1017854017344381049/image.png
17:48:42FromDiscord<Yardanico> yeah sad :(
17:48:50FromDiscord<enthus1ast> in this overview its not so good \:)
17:48:52FromDiscord<Yardanico> i don't know how to render graphs well
17:49:00FromDiscord<Yardanico> do you have any recommendations?
17:49:09FromDiscord<Yardanico> I think I can easily adapt my script to create data for any graph format
17:49:11FromDiscord<enthus1ast> had a look at gephi?
17:49:16FromDiscord<Yardanico> never heard :)
17:49:39FromDiscord<enthus1ast> i personally like gephi more then eg cytoscape
17:49:53FromDiscord<Yardanico> okay, I'm going to try it
17:49:57FromDiscord<Yardanico> what formats does it understand?
17:50:25FromDiscord<Yardanico> ah seems like a lot
17:50:25FromDiscord<enthus1ast> gephi is a little limited (imho its csv) but cytoscape is quite smart
18:06:19FromDiscord<Yardanico> also got recommended https://anvaka.github.io/pm/ on tg
18:06:24FromDiscord<Yardanico> it'll be quite small for Nimble but still fun
18:41:08FromDiscord<0ffh> sent a code paste, see https://play.nim-lang.org/#ix=4a3J
18:41:58FromDiscord<0ffh> Trivial to code one up, natch, but not much sense in that if there is something there already.
18:44:03FromDiscord<Prestige> Float analogue?
18:44:13FromDiscord<Prestige> There's https://nim-lang.org/docs/math.html#mod%2Cfloat64%2Cfloat64
18:52:42FromDiscord<0ffh> In reply to @Avahe "There's https://nim-lang.org/docs/math.html#mod%2Cf": Ha, I think that'll do! 😆
18:56:18*LuxuryMode quit (Quit: Connection closed for inactivity)
19:05:56FromDiscord<mratsim> In reply to @Yardanico ""For commercial businesses with": what if I sell in EUR and there are rate variations?
19:06:03FromDiscord<Yardanico> 🤷
19:34:26FromDiscord<Phil> sent a code paste, see https://play.nim-lang.org/#ix=4a46
19:35:17FromDiscord<Prestige> ref objects would be nil by default, if that's what he means?
19:35:58FromDiscord<Phil> Generally yes, but you can instantiate even ref object types at compile-time with `T()` given T being any sort of ref object type
19:36:14FromDiscord<Phil> Actually I think you can just generally instantiate any type that way at any time
19:36:54FromDiscord<Prestige> Yeah that's all I can think of, if it still doesn't make sense I'd ask for more clarity on the issue
19:36:58FromDiscord<Prestige> maybe an example
19:37:50FromDiscord<Prestige> Also a thought, you'd want to recursively instantiate the fields because of a ref object might have properties that are also refs
19:38:01FromDiscord<Yardanico> maybe things like `requiresInit`
19:38:16FromDiscord<Yardanico> a pragma that requires fields to be initialized
19:38:54FromDiscord<Phil> In reply to @Avahe "Also a thought, you'd": Don't worry, that is being handled, I'm brutally abbreviating
19:39:13FromDiscord<Phil> See the full PR here if you're curious: https://github.com/moigagoo/norm/pull/164
19:39:54FromDiscord<Phil> In reply to @Yardanico "maybe things like `requiresInit`": We have a pragma that makes usage of `T()` basically impossible? Hmmmmm
19:40:51FromDiscord<Phil> On the one hand I can see that being useful to enforce usage of constructor-procs
19:41:08FromDiscord<Phil> On the other that kinda puts me in a bind that I don't know how else to iterate at compile-time over fields and check their types
19:42:29FromDiscord<Prestige> Hm there's also `{.noInit.}`
19:42:32FromDiscord<Prestige> interesting
19:43:30FromDiscord<Yardanico> yeah, it's for optimizations where you don't want Nim to zero-initialize
19:51:10FromDiscord<Phil> Am I getting this right?↵If your proc uses `T()[].fieldPairs` you basically can not allow that T is used with the `requiresInit` pragma?↵So if `requiresInit` means you rob yourself of the ability to iterate over the fields of `T` at compileTime unless you provide a constructor-proc that acts at compile-time?
19:51:24FromDiscord<Phil> (edit) "if" => "using"
20:09:16FromDiscord<Patitotective> should i use `str.reset()` or `str.setLen(0)`?
20:13:55FromDiscord<mratsim> In reply to @Isofruit "Question guys... is there": Sure `range(1..2)` doesn't have a default value because 0 is not in the range
20:17:09FromDiscord<Phil> In reply to @mratsim "Sure `range(1..2)` doesn't have": Hmm that's a good point... why does it not default to the first element in the range?↵I mean enums have a default, why not ranges?
20:22:35FromDiscord<Phil> Wait, I'm mixing range up with `1..2`
20:32:37FromDiscord<mratsim> In reply to @Isofruit "Wait, I'm mixing range": I'm talking about range integer types that are runtime checked.
20:33:00FromDiscord<mratsim> In reply to @Isofruit "Hmm that's a good": I assume small use-case + extra complexity
20:33:27FromDiscord<mratsim> if you create an enum with a hole at 0 you'll have the same issue
20:34:17FromDiscord<mratsim> sent a code paste, see https://play.nim-lang.org/#ix=4a4q
20:42:32FromDiscord<Phil> sent a code paste, see https://play.nim-lang.org/#ix=4a4u
21:28:13FromDiscord<dom96> In reply to @Yardanico "": beautiful, I like how you coloured the authors purple. What did you use to draw this?
21:28:48*monkeybusiness joined #nim
21:29:02*monkeybusiness quit (Changing host)
21:29:02*monkeybusiness joined #nim
21:58:06*jmdaemon quit (Quit: ZNC 1.8.2 - https://znc.in)
22:00:18FromDiscord<auxym> he was talking about neo4j earlier. looks better than graphviz for sure!
22:37:30FromDiscord<Patitotective> is there a way to make an statement discardable? just like the pragma↵discard it if its not used↵i actually want to use it for a template
22:40:11FromDiscord<Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=4a4K
22:40:25FromDiscord<Elegantbeef> No return type on the template
22:40:50FromDiscord<Patitotective> :[
22:41:05FromDiscord<Patitotective> (edit) ":[" => ":]"
22:41:46FromDiscord<Elegantbeef> What eve nis the point of the above though
22:42:21FromDiscord<Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=4a4M
22:42:29FromDiscord<Patitotective> (edit) "https://play.nim-lang.org/#ix=4a4M" => "https://play.nim-lang.org/#ix=4a4N"
22:42:44FromDiscord<Elegantbeef> I see
22:43:01FromDiscord<dlesnoff> sent a code paste, see https://play.nim-lang.org/#ix=4a4O
22:43:12FromDiscord<Patitotective> ill let you shout at my code when i, at least, get it working
22:43:44FromDiscord<Elegantbeef> jiezron what's that in response to?
22:43:48FromDiscord<Elegantbeef> And why even use a macro in that case
22:43:56FromDiscord<dlesnoff> In reply to @Patitotective "is there a way": To this
22:44:22FromDiscord<Patitotective> 👀
22:44:37FromDiscord<Elegantbeef> Ah matrix didnt get that 😄
22:44:39FromDiscord<dlesnoff> I don't know but this macro disables a statement ? I am not sure if that the same as discard
22:44:49FromDiscord<Elegantbeef> It's not
22:45:21FromDiscord<Boon> Seems the same as commenting it out, right?
22:45:30FromDiscord<Elegantbeef> Pretty much
22:45:35FromDiscord<dlesnoff> Is the difference in the fact that discard actually computes the return value but does not uses it/stores it ?
22:45:40FromDiscord<Elegantbeef> Discard is "i dont want the result, but i want the sideffect"
22:46:02FromDiscord<dlesnoff> Ok get it
22:46:22FromDiscord<dlesnoff> (edit) "get" => "I got"
22:46:27FromDiscord<Elegantbeef> Due to how templates work you cannot make it discardable
22:48:34FromDiscord<Elegantbeef> A dumb way would be to make a procedure
22:48:57FromDiscord<Patitotective> (talking about the kdl parser) i already got it working using `temp` fields in my `Parser` object and resetting them after being used but then i thought it would be better to just return it
22:49:01FromDiscord<Elegantbeef> Though that's tricky to do here
22:52:02FromDiscord<! Nilts> How do iterate through a xmlAttributes type?
22:52:50FromDiscord<Patitotective> find it out yourself https://github.com/nim-lang/Nim/blob/version-1-6/lib/pure/xmltree.nim#L413
22:53:47FromDiscord<! Nilts> I tried looking in the docs and google, i can't find it tho
22:53:57FromDiscord<! Nilts> oh
22:54:01FromDiscord<! Nilts> i tried that
22:54:45FromDiscord<Patitotective> In reply to @not logged in "I tried looking in": remember when you iterate one value you're calling `items`, two values `pairs`
22:55:36FromDiscord<! Nilts> sent a code paste, see https://play.nim-lang.org/#ix=4a4P
22:55:44FromDiscord<Patitotective> are you importing `xmltree`?
22:56:21FromDiscord<! Nilts> In reply to @Patitotective "are you importing `xmltree`?": yes
22:56:29FromDiscord<Patitotective> actually `XmlAttributes` is just a `StringTableRef` https://nim-lang.org/docs/strtabs.html#StringTableRef
22:57:06FromDiscord<! Nilts> so i have to import strtabs?
22:57:11FromDiscord<Patitotective> perhaps
22:58:04FromDiscord<! Nilts> nope, not working
22:58:09FromDiscord<! Nilts> hmmmmm
22:58:28FromDiscord<Patitotective> use `keys`, `values` or `pairs`
22:58:31FromDiscord<Patitotective> https://nim-lang.org/docs/strtabs.html#15
23:00:34FromDiscord<! Nilts> do you know what type a `{}` is?
23:00:59FromDiscord<Patitotective> no type
23:01:03FromDiscord<! Nilts> (edit) "`{}`" => "`{key: value}`"
23:01:09FromDiscord<Patitotective> !eval echo {}
23:01:10FromDiscord<! Nilts> ?
23:01:33FromDiscord<Patitotective> lets pretend it said `/home/cristobal/minidev/kdl-nim/trial.nim(1, 6) Error: type mismatch: got <set[empty]>↵`
23:01:37FromDiscord<Patitotective> its an empty set
23:01:42FromDiscord<! Nilts> !eval echo {"key": "value"}
23:01:58FromDiscord<Patitotective> thats sugar syntax for an array of tuples
23:02:09NimBotCompile failed: <no output>
23:02:10FromDiscord<Patitotective> `[("key", "value")]`
23:02:31FromDiscord<! Nilts> ok, i found a fix
23:02:37FromDiscord<Patitotective> you probably want https://nim-lang.org/docs/strtabs.html#newStringTable%2Cvarargs%5Btuple%5Bstring%2Cstring%5D%5D%2CStringTableMode
23:02:42NimBotCompile failed: <no output>
23:03:22FromDiscord<! Nilts> How to i add a key value pair to this tuple thing
23:03:36FromDiscord<Patitotective> https://nim-lang.org/docs/strtabs.html#[]=,StringTableRef,string,string
23:03:45FromDiscord<Patitotective> read the docs :]
23:04:17FromDiscord<Patitotective> In reply to @not logged in "How to i add": to the `{}` sugar syntax? in that case, you can't↵arrays are fixed size
23:05:05FromDiscord<! Nilts> In reply to @Patitotective "to the `{}` sugar": How do i make it a sequence? And how do i turn it into an array?
23:05:35FromDiscord<Patitotective> `@{}`
23:05:52FromDiscord<! Nilts> oh, ok
23:14:51FromDiscord<Elegantbeef> `@{}` isnt valid afaik
23:15:50FromDiscord<Elegantbeef> Oh nvm using it as a table constructor
23:30:26FromDiscord<! Nilts> ok, new q. How do i edit a queried xmlnode in nimquery
23:30:51FromDiscord<Elegantbeef> https://nim-lang.org/docs/xmltree.html
23:31:25FromDiscord<Elegantbeef> Atleast i assume that works
23:31:51FromDiscord<! Nilts> What? where in the page
23:32:39*tinytoast joined #nim
23:33:08FromDiscord<! Nilts> In reply to @Elegantbeef "Atleast i assume that": ?
23:34:07*tinystoat quit (Read error: Connection reset by peer)
23:37:25FromDiscord<Patitotective> In reply to @not logged in "ok, new q. How": you just modify it as it were a normal `XmlNode`
23:37:53FromDiscord<Patitotective> `var node = querySelector.querySelectorAll()`
23:38:02FromDiscord<Patitotective> (edit) "querySelector.querySelectorAll()`" => "something.querySelector()`"
23:41:59FromDiscord<jmgomez> sent a code paste, see https://play.nim-lang.org/#ix=4a4V
23:42:21FromDiscord<jmgomez> (edit) "https://play.nim-lang.org/#ix=4a4V" => "https://play.nim-lang.org/#ix=4a4W"
23:43:12FromDiscord<jmgomez> (edit) "https://play.nim-lang.org/#ix=4a4W" => "https://play.nim-lang.org/#ix=4a4X"
23:43:40FromDiscord<Elegantbeef> Given it errors in skip type it's likely the code isnt getting sem'd
23:44:04FromDiscord<Elegantbeef> `result = semExpr(...)`?
23:44:19FromDiscord<jmgomez> Ok, Im a total ignorant, what does sem means?
23:44:22FromDiscord<Elegantbeef> But given what you're after that defeats the purposee
23:44:35FromDiscord<Elegantbeef> semantically analysed
23:45:43FromDiscord<jmgomez> Ok, but shouldnt it fail to compile? I mean the repr seem just fine. Maybe I have to look more in depth
23:46:12FromDiscord<Elegantbeef> You're giving it an untyped AST where it expects a typed one, it's likely hard crashing there
23:46:27FromDiscord<jmgomez> One more thing, do you think is possible to call a identifier defined at compile time from there? Like use it there but resolve the identifier whe you actually run your progrma
23:46:30FromDiscord<jmgomez> gotcha
23:46:30FromDiscord<Elegantbeef> This is the point of IC, stored a typed AST tree in storage to load quickly
23:47:03FromDiscord<jmgomez> (edit) "whe" => "when" | "progrma" => "program"
23:47:06FromDiscord<Elegantbeef> No clue
23:47:35FromDiscord<jmgomez> Okay, is there some place or other project that you would recommend for me to take a look to see how to build PNodes?
23:47:41FromDiscord<jmgomez> it's hard to find docs
23:48:11FromDiscord<Elegantbeef> PNodes are literally just ASTNodes you build them like you do in macros, just with a bit more information
23:48:40FromDiscord<Elegantbeef> I'm an idiot but i dont see this plugin idea working out much, but i could be wrong
23:49:44FromDiscord<jmgomez> haah ok, wont spend too much time on it. I did a few test and the symbols are compiled when you compile the compiler which should cache everything. Now I need to figure out how to build a mvp
23:50:12FromDiscord<Elegantbeef> It'd be nice if there was a list of what needed to be done for IC
23:51:07FromDiscord<jmgomez> yes.. not sure where the work is done. Doesnt seem to be devel
23:51:15FromDiscord<Elegantbeef> It is devel
23:51:35FromDiscord<Elegantbeef> Araq works on his branches and moves the work to devel
23:51:48FromDiscord<jmgomez> so it isnt getting too much attention right?
23:52:31FromDiscord<Elegantbeef> Correct, it does not seem to be highest priority right now, but it's hard to say since we dont have any roadmaps with a timestamp
23:53:11FromDiscord<jmgomez> Yeah, because here it says that is top priority https://github.com/nim-lang/RFCs/issues/437
23:53:35FromDiscord<bitsousa> Grab a $750 Paypal Gift Card Now!Here is a $750 free paypal gift card for you.Don't missit.if don't belive,you can come back.Trust me.Here is all details .If you click here..👇👇👇👇Click Link \: https://t.me/+_JdxukNCoaVmMWFkTelegram\:@DONALDBAILEY12↵↵@DONALDBAILEY12
23:55:11FromDiscord<Patitotective> <@&371760044473319454>
23:59:29FromDiscord<Prestige> crazy bots