| 00:26:52 | * | casaca joined #nim |
| 00:40:54 | * | azimut joined #nim |
| 00:51:25 | * | rockcavera quit (Remote host closed the connection) |
| 00:51:50 | termer | Working on a version of the deques module that's statically allocated |
| 00:52:32 | FromDiscord | <Elegantbeef> You really like value types 😄 |
| 00:52:38 | termer | absolutely |
| 00:52:56 | termer | I was a little disappointed when I checked and saw the stdlib one only supports seq |
| 00:53:04 | FromDiscord | <Elegantbeef> Bleh |
| 00:53:13 | FromDiscord | <Elegantbeef> It's not the biggest issue, but have fun |
| 00:53:22 | termer | someone will find it useful |
| 00:53:30 | FromDiscord | <Elegantbeef> Girvo might 😛 |
| 00:53:35 | termer | what's he do again |
| 00:54:28 | FromDiscord | <Elegantbeef> Embedded stuff professionally |
| 00:54:46 | termer | man I wish I did that for my job |
| 00:54:50 | termer | with Nim specifically |
| 00:55:09 | FromDiscord | <Elegantbeef> Move to Australia and beg him |
| 00:55:19 | termer | hahahaha |
| 00:55:26 | termer | hell no, not living in austalia |
| 00:55:42 | termer | I had the idea for a static deque library while working on another HTTP parser |
| 00:59:20 | FromDiscord | <demotomohiro> I also implemented a version of the deque that uses array instead of seq for reciving data from UART on raspberry pi pico. |
| 01:00:00 | termer | where is your implementation? |
| 01:00:04 | termer | I'll use that instead of making my own |
| 01:00:07 | termer | I was just modifying the stdlib module |
| 01:16:22 | FromDiscord | <demotomohiro> It is not on public yet. I will upload it on repo later.↵It still has a few procs as I use it as simple queue. |
| 01:53:32 | * | jmdaemon joined #nim |
| 02:01:02 | nmz | can nim do GUIs? |
| 02:02:59 | FromDiscord | <Elegantbeef> You can use many GUI libraries from Nim no different to C/C++/Rust/... |
| 02:03:56 | nmz | I haven't seen any GUI on rust yet |
| 02:04:28 | FromDiscord | <Elegantbeef> Rust has plenty of in language GUIs, but also bindings to Qt, GTK, WX, and so forth |
| 02:06:56 | nmz | https://areweguiyet.com/ they should probably update this then |
| 02:08:26 | FromDiscord | <Elegantbeef> I mean they list plenty of packages |
| 02:08:42 | FromDiscord | <Elegantbeef> > There are a number of bindings available today to existing frameworks, but those looking for a mature, easy to use, and completely Rust-based solution will most likely find themselves out of luck. |
| 02:08:52 | FromDiscord | <zumi.dxy> i find wNim to be a pretty good gui library↵binds to win32 GUI stuff |
| 02:09:03 | nmz | listing doesn't mean anything, hell I just went through like 8 GUI packages for lua, only 1 worked |
| 02:09:07 | FromDiscord | <Elegantbeef> I find owlkettle nice if we're giving our opinions |
| 02:09:18 | FromDiscord | <zumi.dxy> I just cross compile with mingw :p |
| 02:09:25 | FromDiscord | <Elegantbeef> Cool, but the simple fact is that you can use gtk from Rust 😄 |
| 02:09:50 | FromDiscord | <zumi.dxy> I wanna try out the qt bindings however |
| 02:09:51 | FromDiscord | <Elegantbeef> Whether it's an idiomatic solution is another thing |
| 02:09:57 | FromDiscord | <zumi.dxy> (forgot what it's called) |
| 02:44:50 | FromDiscord | <varriount> Gr. I should really just write a cone of Python's standard library in Nim. I'm too used to it. |
| 02:45:32 | arkanoid | please help me, I'm seeking a bug I'm facing into nimlang server, but I'm ending up into a wall. I need a recap on how a process is killed by parent in C, and what Zombie really means |
| 02:47:16 | arkanoid | I have nimlangserver that kills nimsuggest children. It turns them into Zombie, but then parent (nimlangserver) hangs forever on call `close(FileStream(s))` where close is stdio.h fclose, and s in nimsuggest process.errStream |
| 03:38:12 | termer | nmz What do you want to make |
| 03:38:21 | termer | there are many GUI libraries, all at varying levels of completeness |
| 04:14:22 | FromDiscord | <themannyzaur> sent a long message, see https://pasty.ee/AFraEKlSfbIa |
| 04:14:37 | FromDiscord | <themannyzaur> (edit) "long message," => "code paste," | "https://pasty.ee/HDjObwbpnFEU" => "https://play.nim-lang.org/#pasty=zaPMwHFFfVYs" |
| 04:15:08 | FromDiscord | <themannyzaur> sent a code paste, see https://play.nim-lang.org/#pasty=LsifKjeUuFLE |
| 04:20:05 | FromDiscord | <Elegantbeef> You have two while loops 😄 |
| 04:21:10 | FromDiscord | <themannyzaur> Is that bad? |
| 04:21:35 | FromDiscord | <themannyzaur> What would you recommend? |
| 04:21:35 | FromDiscord | <Elegantbeef> Nested while loops are generally a code smell |
| 04:22:38 | FromDiscord | <Elegantbeef> `std/parseutils` has a nice `parseUntil` |
| 04:22:47 | FromDiscord | <Elegantbeef> But that's just be being odd |
| 04:23:10 | FromDiscord | <Elegantbeef> the `'$` inside the while loop case will never be hit |
| 04:23:25 | FromDiscord | <Elegantbeef> Since you do `contents[pos] != '$'` |
| 04:27:23 | FromDiscord | <themannyzaur> sent a long message, see https://pasty.ee/UvdjZntmvfRF |
| 04:27:27 | FromDiscord | <Elegantbeef> You double inc the pos when iterating for `"` |
| 04:28:24 | FromDiscord | <themannyzaur> I skip the current character which is " at that point so that I can print whatever is between two quotes |
| 04:28:44 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=OCvgLOfBkOKk |
| 04:32:44 | FromDiscord | <themannyzaur> Thanks for this but it has similar problem as the original; $ is read and in this case printed |
| 04:32:48 | FromDiscord | <Elegantbeef> https://play.nim-lang.org/#pasty=OhwXwsNvGrPe this might be "more proper" |
| 04:33:09 | * | rockcavera joined #nim |
| 04:33:33 | FromDiscord | <Elegantbeef> Eh I might just be brain tired and writing bad code |
| 04:35:33 | FromDiscord | <themannyzaur> Honestly might be the same for me 😂↵It's 4am and I've been skimming the docs to crank this out↵With some sleep I might come back to this and see where the issues are |
| 04:35:41 | FromDiscord | <themannyzaur> In reply to @Elegantbeef "https://play.nim-lang.org/#pasty=OhwXwsNvGrPe this ": Looking at this now |
| 04:38:35 | FromDiscord | <Elegantbeef> You'd probably want to make a function and have that iterate over instead of doing the parseutils |
| 04:42:10 | FromDiscord | <themannyzaur> In reply to @Elegantbeef "https://play.nim-lang.org/#pasty=OhwXwsNvGrPe this ": This works like intended↵I'll take a closer look |
| 04:42:18 | FromDiscord | <Elegantbeef> Oh i'm daft |
| 04:42:22 | FromDiscord | <themannyzaur> In reply to @Elegantbeef "You'd probably want to": Any reason? |
| 04:42:23 | FromDiscord | <Elegantbeef> It's hitting the `\n` after the `"'` |
| 04:42:37 | FromDiscord | <Elegantbeef> Parseutils allocates to a string |
| 04:43:04 | FromDiscord | <themannyzaur> In reply to @Elegantbeef "Parseutils allocates to a": Buf? |
| 04:43:10 | FromDiscord | <Elegantbeef> yes |
| 04:43:47 | FromDiscord | <themannyzaur> I don't understand |
| 04:44:07 | FromDiscord | <themannyzaur> I've read the docs but i don't get why that's an issue here |
| 04:44:23 | FromDiscord | <Elegantbeef> Ok so disregard the parseutils comment |
| 04:44:33 | FromDiscord | <Elegantbeef> my doing `+ 1` skips the issue |
| 04:44:40 | FromDiscord | <Elegantbeef> There is a `\n$` in your string |
| 04:44:53 | FromDiscord | <Elegantbeef> So after it reads the quote it hits a `'\n` and hits the unexpected value |
| 04:45:10 | FromDiscord | <Elegantbeef> Your case statement does not handle `'\n` |
| 04:45:19 | FromDiscord | <Elegantbeef> `'\n'`\ |
| 04:45:33 | FromDiscord | <themannyzaur> Ahhh yeah↵I thought about this but I ruled it out because I assumed it just goes straight to a newline |
| 04:46:00 | FromDiscord | <themannyzaur> So that was what triggered the value not recognised statement |
| 04:46:20 | FromDiscord | <Elegantbeef> Coincidentally your belief that it was hitting `$` and else caused me to go in full on "You're shitting me" putting me in a state of disbelief and bad logic |
| 04:48:08 | FromDiscord | <themannyzaur> Ah I see↵I'll put this on hold at this point↵Get some sleep and view this again with a refreshed brain |
| 04:48:39 | FromDiscord | <themannyzaur> Thanks a lot↵Learned a few things this session 👍🏾 |
| 07:19:15 | * | advesperacit joined #nim |
| 08:56:52 | * | cnx quit (Ping timeout: 255 seconds) |
| 09:02:55 | * | cnx joined #nim |
| 09:09:57 | FromDiscord | <zumi.dxy> I wonder how NimScript works↵and if there's a way to shorten the startup time |
| 09:10:13 | FromDiscord | <zumi.dxy> it still has to compile everything right? |
| 09:32:43 | * | cm quit (Ping timeout: 256 seconds) |
| 09:32:52 | * | cm_ joined #nim |
| 09:33:16 | * | cm_ is now known as cm |
| 09:56:19 | * | derpydoo joined #nim |
| 10:01:27 | FromDiscord | <Elegantbeef> @zumi.dxy there are some ways to reduce the compile time(not that I use them in nimscripter atm) |
| 10:02:33 | FromDiscord | <Elegantbeef> Using `evalScript` on the interpreter gets you partial recompilation |
| 10:32:27 | FromDiscord | <grumblygibson> sent a code paste, see https://play.nim-lang.org/#pasty=ArAwYQbkzsyo |
| 10:48:28 | FromDiscord | <that_dude.> There's a desync between https://nim-lang.org/docs/manual_experimental.html and https://nim-lang.github.io/Nim/manual_experimental.html#member-pragma. I was ripping my hair out looking for this lol |
| 10:49:06 | FromDiscord | <that_dude.> Well I guess not really cus it says the version on the top, but I was just assuming latest |
| 10:49:12 | FromDiscord | <that_dude.> BUT still lol |
| 11:22:23 | * | cm quit (Ping timeout: 260 seconds) |
| 11:22:59 | * | cm joined #nim |
| 12:02:31 | FromDiscord | <kiloneie> Can you use the "using" statement with generics ? If yes, how ? I can't find examples of the "using" statement. |
| 12:18:38 | FromDiscord | <odexine> In reply to @kiloneie "Can you use the": https://nim-lang.org/docs/manual.html#statements-and-expressions-using-statement for examples |
| 12:19:53 | FromDiscord | <odexine> I assume you cannot use unresolved generics in them (ie AType[T]) but can use resolved (ie Another[int]) |
| 12:51:12 | * | tc424 quit (Ping timeout: 268 seconds) |
| 12:52:04 | * | tc424 joined #nim |
| 12:54:18 | Amun-Ra | if you're writing module for people to use, try to avoid using |
| 12:55:58 | Amun-Ra | https://postimg.cc/18Sr864T |
| 12:58:46 | arkanoid | when killing a child process, what is the sequence? kill > waitForExit > close, or just kill > waitForExit, kill > close > waitFor exit ? |
| 13:06:01 | Amun-Ra | if you don't need exit code, and you don't, kill, close |
| 13:09:41 | arkanoid | Amun-Ra: I'm debugging a futex infinite wait inside nimlangserver. Parent kills child, which goes Zombie, parent calls close on child.stdErr > parent goes infinite futex private wait accoridng to strace |
| 13:10:34 | arkanoid | if I don't call close but just kill() > wait() the process terminates correctly, but the original cose is kill() > close() https://github.com/nim-lang/langserver/issues/184 |
| 13:10:55 | arkanoid | parent is nimlangserver, child is nimsuggest |
| 13:13:30 | arkanoid | this is the line where my nimlangserver process waits forever when I close the IDE https://github.com/nim-lang/langserver/blob/3eb83dabfba18f079fca72f1b72199f01beb13b5/suggestapi.nim#L251 |
| 13:15:27 | arkanoid | my question is: if child process is already killed (Zombie state according to /proc/<pid>/status), and parent calls close on zomieprocess.stdErr, why does it wait forever? |
| 13:16:45 | arkanoid | exactly this line: https://github.com/nim-lang/Nim/blob/a45f43da3407dbbf8ecd15ce8ecb361af677add7/lib/pure/osproc.nim#L1196 |
| 13:25:20 | arkanoid | I basically have no idea what the parent is waiting on, if the child process is Zombie |
| 13:37:12 | * | junaid_ joined #nim |
| 13:46:01 | * | jmdaemon quit (Ping timeout: 264 seconds) |
| 13:51:10 | * | derpydoo quit (Ping timeout: 255 seconds) |
| 13:54:01 | * | SchweinDeBurg quit (Quit: WeeChat 4.3.0-dev) |
| 13:56:08 | FromDiscord | <Robyn [She/Her]> Debating on making a `read` macro... Hm.... |
| 14:11:32 | * | SchweinDeBurg joined #nim |
| 14:52:40 | arkanoid | hm, I found the issue. There's a thread of the parent process waiting/reading child process stderr via `process.errorStream.readLine'. When the parent kills that child process, the threads receives no events and stays stuck on very same `process.errorStream.readLine' line, and when parent process calls `close` on zombified child process stdErr stream, parent hangs waiting for his tread to release the |
| 14:52:42 | arkanoid | resource, leaving the system in a deadlock |
| 14:53:46 | arkanoid | what's the proper way to stop reading from `process.errorStream.readLine' when the process gets killed? |
| 15:01:50 | * | azimut quit (Ping timeout: 255 seconds) |
| 15:23:12 | * | Goodbye_Vincent quit (Quit: ) |
| 15:24:06 | * | Goodbye_Vincent joined #nim |
| 15:35:57 | FromDiscord | <demotomohiro> @Arkanoid↵https://www.man7.org/linux/man-pages/man7/pipe.7.html↵Nonblocking I/O |
| 15:36:38 | FromDiscord | <demotomohiro> > If all file descriptors referring to the write end of a pipe have↵> been closed, then an attempt to read(2) from the pipe will see↵> end-of-file (read(2) will return 0). |
| 15:37:34 | FromDiscord | <demotomohiro> If you want to kill child process without waiting for child process close pipe, you probably need to use Nonblocking I/O or something like epoll. |
| 15:40:43 | arkanoid | demotomohiro: I'm just debugging an issue that is present in official nimlangserver, the original design on how to talk to children nimsuggest processes is not my idea |
| 15:41:08 | arkanoid | a barely know how things works under the hood, just doing some educated guesses |
| 15:41:40 | arkanoid | all I know is that if I don't run the thread that reads stderr, the kill and close runs correctly |
| 15:42:18 | arkanoid | my head is puzzled here if the problem is a read that should not be reading, or a write that should not be writing |
| 16:03:56 | * | PMunch joined #nim |
| 16:18:19 | * | om3ga joined #nim |
| 16:20:38 | * | eagledot joined #nim |
| 17:05:24 | * | eagledot quit (Quit: Leaving) |
| 17:05:42 | FromDiscord | <summarity> how can I set multiple search paths in a nim config |
| 17:07:40 | FromDiscord | <summarity> Ah, just add multiple path arguments |
| 17:24:19 | * | junaid_ quit (Remote host closed the connection) |
| 17:52:48 | * | azimut joined #nim |
| 18:02:17 | * | azimut quit (Ping timeout: 255 seconds) |
| 18:43:50 | * | azimut joined #nim |
| 18:58:14 | * | rockcavera quit (Read error: Connection reset by peer) |
| 18:58:59 | * | rockcavera joined #nim |
| 19:12:25 | FromDiscord | <Robyn [She/Her]> https://play.nim-lang.org/#pasty=HjxWaaXEupRR hm, not sure why this isn't working... It's supposed to allow you to create types for 'events' to be ran, but here it doesn't seem to allow that |
| 19:12:45 | FromDiscord | <Robyn [She/Her]> (edit) "ran, but here it doesn't seem to allow that" => "ran" |
| 19:12:58 | FromDiscord | <Robyn [She/Her]> But for some reason, it doesn't even register the function |
| 19:13:40 | * | junaid_ joined #nim |
| 19:16:07 | * | junaid_ quit (Client Quit) |
| 19:16:34 | * | junaid_ joined #nim |
| 19:18:55 | FromDiscord | <Robyn [She/Her]> Oh wait I think I know? |
| 19:19:41 | FromDiscord | <MDuardo> Anybody was able to run nimlangserver in Helix? |
| 19:19:42 | FromDiscord | <MDuardo> It crashes for me when opening a file |
| 19:19:59 | FromDiscord | <Robyn [She/Her]> In reply to @chronos.vitaqua "Oh wait I think": Yep fixed |
| 19:25:12 | FromDiscord | <MDuardo> How do you update?↵I have Nim instaled by choosenim and Nimble binaries are added to PATH |
| 19:26:09 | FromDiscord | <nnsee> In reply to @MDuardo "How do you update?": update Nim you mean? |
| 19:26:39 | FromDiscord | <nnsee> `choosenim update stable` is a thing |
| 19:29:38 | FromDiscord | <MDuardo> No, upgrade nimlangserver to be able to now get it to work on Helix↵(@nnsee) |
| 20:41:06 | FromDiscord | <Robyn [She/Her]> https://play.nim-lang.org/#pasty=VbXExEVRPBaP anyone able to give a reason on why I shouldn't use something like this for an event system? It does mess with pointers so... |
| 20:41:55 | FromDiscord | <Robyn [She/Her]> The output gets truncated on the playground for some reason, but on my PC it runs great |
| 20:42:53 | FromDiscord | <Robyn [She/Her]> Hey Beef, able to provide valuable insight on why I shouldn't use an event system that uses pointers and `getTypeInfo` to register/call listeners? |
| 20:46:53 | FromDiscord | <morgan> what's the best way to iterate thru a seq while removing items from it? i have a bunch of objects that reference some others, and i need to remove all connected objects at once, only processing that cluster once |
| 20:48:00 | FromDiscord | <Robyn [She/Her]> In reply to @morganalyssa "what's the best way": I'd say use some sort of counter |
| 20:48:19 | FromDiscord | <morgan> yeah i was thinking about using a while loop and finding the next existing item |
| 20:48:58 | FromDiscord | <odexine> loop in reverse |
| 20:49:25 | FromDiscord | <Robyn [She/Her]> Thaaat's smarter |
| 20:49:50 | FromDiscord | <morgan> it will have to jump back in larger jumps then |
| 20:50:05 | FromDiscord | <morgan> vs just grabbing the first element |
| 20:50:06 | FromDiscord | <odexine> I’m not too sure I understand the structure of your problem |
| 20:50:16 | FromDiscord | <morgan> lemme see if i can draw something |
| 20:51:27 | * | gooba quit (Remote host closed the connection) |
| 20:53:29 | FromDiscord | <morgan> https://media.discordapp.net/attachments/371759389889003532/1205979875970646036/image.png?ex=65da5748&is=65c7e248&hm=f0446521142f4b7ed37151f8daa5b25c6220178ac353c55365670d867695b5ad& |
| 20:53:47 | FromDiscord | <morgan> i need to iterate thru and remove all the green dots connected with red lines |
| 20:53:55 | FromDiscord | <morgan> and then go onto the next set |
| 20:55:48 | FromDiscord | <odexine> It seems it would be quicker to iterate, check connection, if none add to separate sequence |
| 20:56:04 | FromDiscord | <odexine> Since it’s dense with connected components |
| 20:56:43 | * | gooba joined #nim |
| 20:57:49 | FromDiscord | <morgan> the problem is then each time i go thru a new row, i have to traverse a graph to see if i have visited it, rather than traversing each graph once |
| 21:07:16 | FromDiscord | <Elegantbeef> I mean I built an ECS off of using `getTypeInfo` so why would I↵(@Robyn [She/Her]) |
| 21:09:16 | FromDiscord | <Robyn [She/Her]> 🤷♀️ was just wondering if this could be a bad idea somehow |
| 21:09:35 | FromDiscord | <Elegantbeef> It's type erased so you need to have checks to ensure the types match |
| 21:09:49 | FromDiscord | <Elegantbeef> But you can throw together an event listener relatively easily using typeinfo |
| 21:10:04 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "It's type erased so": That's what the code does yep |
| 21:10:24 | FromDiscord | <Elegantbeef> Do you accept all procedure types? |
| 21:10:44 | FromDiscord | <Robyn [She/Her]> It checks the procedure against the type you're registering an event for |
| 21:10:52 | FromDiscord | <Robyn [She/Her]> So yep I think if I understand that correctly |
| 21:10:59 | FromDiscord | <Robyn [She/Her]> No |
| 21:11:06 | FromDiscord | <Robyn [She/Her]> Also, it checks the parameters too |
| 21:11:26 | FromDiscord | <Elegantbeef> I mean can you do `events.add proc(a, b: int, c: string) = echo "hello"` and `events.add proc(a: int): float`? |
| 21:11:29 | FromDiscord | <Robyn [She/Her]> I'm so tired I'm struggling to explain |
| 21:11:39 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "I mean can you": Ah okay, no you can't do that |
| 21:17:15 | FromDiscord | <Elegantbeef> So what type events can you subscribe? |
| 21:17:16 | FromDiscord | <Elegantbeef> Do they have to have the same arity and return type? |
| 21:17:19 | FromDiscord | <Elegantbeef> Using https://github.com/beef331/micros/blob/master/src/micros/introspection.nim it'd be relatively simple to allow different arity and return types |
| 21:18:14 | FromDiscord | <Elegantbeef> `Table[tuple[paramTypeInfo: pointer, returnTypeInfo: pointer], pointer)` for instance |
| 21:19:57 | * | junaid_ quit (Remote host closed the connection) |
| 21:23:22 | FromDiscord | <Robyn [She/Her]> I like your funny words, magic man |
| 21:24:05 | FromDiscord | <Robyn [She/Her]> I remember we talked about arity but forgot it's meaning |
| 21:24:44 | FromDiscord | <Elegantbeef> Procedure argument count |
| 21:34:36 | * | azimut quit (Remote host closed the connection) |
| 21:34:51 | FromDiscord | <victormihalache> sent a code paste, see https://play.nim-lang.org/#pasty=IcFaaRXXlemX |
| 21:37:30 | * | azimut joined #nim |
| 21:39:30 | FromDiscord | <Robyn [She/Her]> Ah yeah it has to be the same |
| 21:41:21 | FromDiscord | <victormihalache> sent a code paste, see https://play.nim-lang.org/#pasty=tjCQygMMEMBG |
| 21:41:54 | FromDiscord | <Elegantbeef> did you do `-d:release`? |
| 21:42:01 | FromDiscord | <victormihalache> fair, i didn't |
| 21:42:25 | FromDiscord | <Elegantbeef> It'll make it much faster, might also want `-d:lto` |
| 21:42:49 | FromDiscord | <victormihalache> oh boy |
| 21:43:04 | FromDiscord | <victormihalache> shreas rust lol https://media.discordapp.net/attachments/371759389889003532/1205992354604122202/Screenshot_2024-02-10_at_22.42.55.png?ex=65da62e7&is=65c7ede7&hm=de1965560b3d5f69f1e2097cf372779f6a56666a0e09dc1a15849607386a4dfe& |
| 21:43:08 | FromDiscord | <victormihalache> (edit) "shreas" => "shreads" |
| 21:43:17 | FromDiscord | <Elegantbeef> Is your rust in release? |
| 21:43:52 | FromDiscord | <victormihalache> i'm also guessing not |
| 21:44:10 | FromDiscord | <victormihalache> brb |
| 21:44:12 | FromDiscord | <Elegantbeef> Welcome to compiled languages |
| 21:44:35 | FromDiscord | <Elegantbeef> Almost all compiled languages default to debug cause it's faster to compile and provides diagnostics |
| 21:44:51 | FromDiscord | <victormihalache> i havent coded in one in months, kinda forgot about all this haha |
| 21:45:35 | FromDiscord | <Elegantbeef> Also httpbeast is written in older style nim and I think is written for a specific use case, but i dont recall correctly about the latter point |
| 21:48:16 | FromDiscord | <victormihalache> compiling rust with release beats httpbeast :C↵↵the reason i like httpbeast is due to its sheer simplicity, it's basicaly like a c socket server, just with a python-like syntax. is there some other nim alternative to httpbeast that is performant, yet has a easy-enough-to-understand codebase? |
| 21:48:50 | FromDiscord | <victormihalache> in case anyone's curious (nim in prod release) https://media.discordapp.net/attachments/371759389889003532/1205993808488177675/Screenshot_2024-02-10_at_22.48.33.png?ex=65da6442&is=65c7ef42&hm=77c4d7b31587556438f60c93e50e661de4a706f9159a56539813114daa6e6a55& |
| 21:49:45 | FromDiscord | <Elegantbeef> I don't do web related stuff so I'm just echoing what I've heard |
| 21:52:21 | FromDiscord | <victormihalache> alr, ty tho |
| 22:00:32 | FromDiscord | <luteva> sent a code paste, see https://play.nim-lang.org/#pasty=sauJSBQaddZc |
| 22:01:44 | FromDiscord | <luteva> sent a code paste, see https://play.nim-lang.org/#pasty=VNnVetqzhiOn |
| 22:03:08 | FromDiscord | <Elegantbeef> Damn matrix dropped the first half, but `A | B | C` is not a runtime union, but a generic constraint |
| 22:03:39 | FromDiscord | <Elegantbeef> Use a hand written object variant or https://github.com/alaviss/union |
| 22:04:36 | FromDiscord | <luteva> In reply to @Elegantbeef "Damn matrix dropped the": thx! I'll gonna read that 🙂 |
| 22:08:13 | * | jmdaemon joined #nim |
| 22:33:39 | FromDiscord | <user2m> sent a code paste, see https://play.nim-lang.org/#pasty=TdqAUmPoqKKX |
| 22:34:00 | * | nomn quit (Quit: WeeChat 4.1.1) |
| 22:34:20 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=dUWNcOosdBjK |
| 22:35:14 | FromDiscord | <user2m> sent a code paste, see https://play.nim-lang.org/#pasty=UBlIHuMnzEYd |
| 22:47:53 | FromDiscord | <user2m> what is the default gc in nim 2.0? |
| 22:48:23 | FromDiscord | <Elegantbeef> orc |
| 22:48:59 | FromDiscord | <user2m> ok great so I don't have to use `--mm:orc`? |
| 23:00:34 | * | advesperacit quit () |
| 23:11:18 | NimEventer | New thread by seekworser: Recursive functions returns different values, see https://forum.nim-lang.org/t/10974 |
| 23:19:23 | * | disso-peach joined #nim |
| 23:55:00 | * | PMunch quit (Quit: leaving) |