| 00:14:32 | FromDiscord | <tewesday> Ah that pragma is really what I needed to find. It wasn't clear to me that the numbers were coming from codegenDecl, but it makes sense now. Thanks for the link! |
| 00:31:42 | FromDiscord | <DetermiedNim1> no problem! |
| 00:31:56 | FromDiscord | <DetermiedNim1> the search feature in the nim docs can be pretty helpful lol |
| 01:02:15 | * | zero` joined #nim |
| 01:05:13 | * | zero`__ quit (Ping timeout: 242 seconds) |
| 01:05:42 | * | zero`_ joined #nim |
| 01:09:28 | * | zero` quit (Ping timeout: 244 seconds) |
| 01:40:36 | * | acidsys quit (Ping timeout: 252 seconds) |
| 01:44:04 | * | acidsys joined #nim |
| 01:50:31 | FromDiscord | <tewesday> Yes the search and docs are great I just didn't know what to search for lol |
| 02:31:03 | * | rockcavera quit (Remote host closed the connection) |
| 05:07:40 | * | xutaxkamay quit (Read error: Connection reset by peer) |
| 05:08:01 | * | xutaxkamay joined #nim |
| 05:11:14 | * | Skippy8 joined #nim |
| 05:13:57 | * | Pixi` joined #nim |
| 05:17:07 | * | Pixi quit (Ping timeout: 264 seconds) |
| 06:05:49 | * | Pixi` is now known as Pixi |
| 06:21:34 | * | pmp-p quit (Ping timeout: 245 seconds) |
| 06:40:29 | * | pmp-p joined #nim |
| 07:34:09 | skulk | running into a bizarre situation where a module-level let is being corrupted and replaced with a different object entirely (let var* = Obj(...), Obj is a ref struct). |
| 07:35:16 | Amun-Ra | are you writing to pointers directly willy-nilly? |
| 07:35:22 | skulk | nope |
| 07:35:43 | skulk | valgrind reports a bunch of invalid reads after a non-deterministic amount of time |
| 07:36:06 | skulk | the program is a simple compiler/vm, and tons of little objects get created/GC'd |
| 07:36:21 | Amun-Ra | no ptrs not casts? |
| 07:36:26 | Amun-Ra | nor* |
| 07:36:28 | skulk | not a single one |
| 07:36:38 | Amun-Ra | hmm |
| 07:36:56 | Amun-Ra | then I'm out of suspects (and I had only one - you) ;) |
| 07:37:28 | Amun-Ra | valgrind is pretty slow… use asan/ubsan/… |
| 07:37:46 | skulk | noted |
| 07:38:41 | Amun-Ra | I mean I use it too from time to time but it got mostly replaced by SANs |
| 07:39:11 | skulk | it's fast enough for my purposes here but if there's a better alternative I'll try it out |
| 08:02:10 | * | Skippy8 quit (Ping timeout: 244 seconds) |
| 08:15:10 | * | Skippy8 joined #nim |
| 08:55:29 | * | SchweinDeBurg quit (Remote host closed the connection) |
| 08:55:47 | * | SchweinDeBurg joined #nim |
| 10:09:07 | * | xet7 joined #nim |
| 10:23:43 | * | Skippy8 quit (Ping timeout: 264 seconds) |
| 11:24:06 | * | Artea joined #nim |
| 12:32:04 | * | Jhonny2x4 quit (Quit: Jhonny2x4) |
| 12:32:15 | * | Jhonny2x4 joined #nim |
| 13:46:57 | * | zodman joined #nim |
| 15:02:12 | * | Skippy8 joined #nim |
| 15:10:44 | * | Skippy8 quit (Ping timeout: 245 seconds) |
| 15:17:56 | FromDiscord | <abdulrahman.103> https://media.discordapp.net/attachments/371759389889003532/1535306002834915379/Video_2026-08-07_18-14-29.mp4?ex=6a7748a3&is=6a75f723&hm=7de8b67520ed56883e9ef28a2b12a4a40581d538b7875bd2eb932cf6987466cf& |
| 15:17:57 | FromDiscord | <abdulrahman.103> my first nim app |
| 15:18:06 | FromDiscord | <abdulrahman.103> some physics and raylib |
| 15:18:15 | FromDiscord | <abdulrahman.103> this language is fun |
| 15:18:26 | FromDiscord | <abdulrahman.103> I can't code c again |
| 15:18:31 | FromDiscord | <abdulrahman.103> (edit) "I can't code ... c" added "in" |
| 15:18:47 | FromDiscord | <abdulrahman.103> I made just tetris in c and it took over 1000 lines |
| 16:17:48 | * | Skippy8 joined #nim |
| 17:29:05 | FromDiscord | <scoopahdoopah> I've been liking it a lot so far, I started learning programming with python and I remember seeing nim years ago and it not making any sense but then after trying a bunch of other languages and coming back to it it makes sense lol |
| 17:34:33 | * | Skippy8 quit (Ping timeout: 246 seconds) |
| 19:29:37 | * | zkzeroed joined #nim |
| 19:45:17 | zkzeroed | Hi all, taking a look into nim, thought I'd join you all |
| 19:47:56 | tarzeau_ | welcome! |
| 19:54:40 | zkzeroed | Thanks, have a question. Are you familiar with any attempts to create a Blockchain in nim? |
| 19:57:25 | * | Skippy8 joined #nim |
| 20:01:58 | tarzeau_ | no idea, i'm using it only to build https://chawan.net |
| 20:04:47 | zkzeroed | Seems interestings, what was the motivation for chawan? |
| 20:25:01 | tarzeau_ | building a browser from source takes too long? |
| 20:25:29 | tarzeau_ | now i can have a browser, that does js,css,graphics in a terminal (kitty with sixel graphics) |
| 20:32:51 | FromDiscord | <nasuray> In reply to @zkzeroed "Thanks, have a question.": https://status.app/ |
| 20:38:14 | * | Lord_Nightmare quit (Ping timeout: 271 seconds) |
| 20:45:11 | FromDiscord | <Robyn [She/Her]> In reply to @tarzeau_ "now i can have": if it piques your interest, there's a pure Nim JS runtime |
| 20:46:29 | FromDiscord | <Robyn [She/Her]> https://github.com/ferus-web/bali |
| 20:46:44 | skulk | tarzeau_: chawan is awesome! |
| 20:49:09 | tarzeau_ | skulk: on what did you build? and which webpages did you try? |
| 20:49:36 | skulk | tarzeau_: I'm using the one from nixpkgs and using it to read lobste.rs |
| 20:50:06 | skulk | It displays blogs as faithfully as I could hope for in a terminal |
| 20:50:55 | tarzeau_ | using js, sixel graphics on? |
| 20:55:59 | FromDiscord | <mratsim> In reply to @zkzeroed "Thanks, have a question.": check status-im github |
| 21:12:25 | skulk | tarzeau_: no js, not even sure how to turn it on |
| 21:12:54 | skulk | and no sixel graphics either (I'm using terminals in emacs, ghostel specifically, which I don't think supports sixel) |
| 21:13:06 | tarzeau_ | skulk: https://sources.debian.org/src/chawan/0.4.4-1/debian/README.Debian |
| 21:13:40 | skulk | oh apparently ghostel supports kitty graphics, I'll try it out! |
| 21:14:37 | tarzeau_ | if one day it can render all web pages, and pass acid test... |
| 21:17:39 | skulk | does acid test imply pixel-perfectness? or just DOM structure |
| 21:17:51 | skulk | I wouldn't want it to be pixel-perfect, then it's going to be just another rendering engine |
| 21:22:03 | tarzeau_ | https://www.acidtests.org/ |
| 21:23:04 | tarzeau_ | ff makes 96/100, cha doid 61/100 |
| 21:23:43 | skulk | that's impressive |
| 21:28:02 | skulk | yep, reproduced the 61/100. That's more than I'd ever expect for a terminal browser. |
| 22:06:22 | * | Mister_Magister quit (Excess Flood) |
| 22:06:38 | * | Mister_Magister joined #nim |
| 22:13:03 | * | zkzeroed quit (Quit: zkzeroed) |
| 22:32:50 | * | Lord_Nightmare joined #nim |
| 22:44:57 | * | zkzeroed joined #nim |
| 23:15:42 | FromDiscord | <11clock> I've been trying to determine what language to use, and after researching a lot I think it has come down to Nim and Odin as the finalists. |
| 23:17:18 | FromDiscord | <scoopahdoopah> I was just trying Odin it's also very clean but I feel like most of the stuff I make doesn't really need that tight of memory control |
| 23:17:36 | FromDiscord | <scoopahdoopah> and they're very anti metaprogramming they straight up just write an Odin program that writes another Odin program |
| 23:18:27 | FromDiscord | <11clock> Odin definitely feels really well made. The issue for me has been all the overhead with pointers and memory management. |
| 23:19:23 | FromDiscord | <11clock> But it also has me making more decisions about what I am actually coding vs "what is the most elegant way I can write this". |
| 23:20:31 | FromDiscord | <11clock> Less features, but they are well thought out and it means less choices to make. |
| 23:20:57 | FromDiscord | <scoopahdoopah> the best case for it is when u can really just allocate all the memory u need up front in huge arenas |
| 23:21:06 | FromDiscord | <scoopahdoopah> then yr really not even worried about it |
| 23:22:31 | FromDiscord | <11clock> Meanwhile, Nim's tooling is quite a bit worse, and doesn't have unions, nor the using keyword. |
| 23:22:45 | FromDiscord | <11clock> Nor array programming. |
| 23:22:56 | FromDiscord | <11clock> So for me it's a tossup. |
| 23:24:25 | FromDiscord | <scoopahdoopah> I just like how flexible it is so far like u can recreate anything else u need with what's there |
| 23:24:28 | FromDiscord | <11clock> I definitely prefer Odin's package management. They are directories instead of files. |
| 23:26:14 | FromDiscord | <11clock> It sucks because whichever language I choose has tradeoffs. |
| 23:26:54 | FromDiscord | <scoopahdoopah> tru that's just the nature of languages lol |
| 23:27:48 | FromDiscord | <exelotl> Nim does have unions, there's case objects for tagged unions, or the {.union.} pragma for C-style unions |
| 23:29:24 | FromDiscord | <11clock> Nim's version of unions, variable objects, aren't very ergonomic. I did see that there is a better version in the pipeline though. |
| 23:29:30 | FromDiscord | <scoopahdoopah> it's kind of funny when u compare the 2 languages cuz ginger bill hates everything that nim does |
| 23:37:08 | FromDiscord | <nervecenter> sent a long message, see https://paste.rs/V8QWp |
| 23:37:41 | FromDiscord | <nervecenter> (edit) "https://paste.rs/n48pe" => "https://paste.rs/nbu64" |
| 23:38:28 | FromDiscord | <nervecenter> Carbon could also be neat but it's vaporware for the time being. |
| 23:40:58 | FromDiscord | <11clock> sent a long message, see https://paste.rs/MsRaL |
| 23:41:26 | FromDiscord | <nervecenter> Tooling is overrated |
| 23:41:35 | FromDiscord | <11clock> I strongly disagree. |
| 23:41:54 | FromDiscord | <nervecenter> Which tooling features are you most reliant on? |
| 23:42:05 | FromDiscord | <nervecenter> Regardless of language or project |
| 23:42:57 | FromDiscord | <11clock> Context-aware autocompletion, goto definition, realtime diagnostics |
| 23:43:47 | FromDiscord | <11clock> Nim's LSP is unstable and randomly crashes, and regularly hallucinates errors. |
| 23:44:19 | FromDiscord | <scoopahdoopah> tbh nim lang server kinda chugs but it's workable if I keep restarting it lmao |
| 23:45:01 | FromDiscord | <11clock> Honestly if Nim had solid tooling, it would be the easy winner between my two finalists. |
| 23:45:31 | FromDiscord | <11clock> Odin's tooling isn't even that hard to beat. It's only just decent. |
| 23:46:30 | FromDiscord | <scoopahdoopah> the lsp is the biggest thing but I kinda prefer just vendoring specific files vs a package manager where possible anyway |
| 23:47:09 | FromDiscord | <11clock> And Nim likely won't have a better LSP until sometime after Nim 3 comes out, and who knows when that will be. |
| 23:47:59 | FromDiscord | <11clock> Currently in Odin I have just been using value types as much as possible to avoid manual memory management where I can. |
| 23:48:26 | FromDiscord | <11clock> The main restraint with that approach is that I can't use maps. |
| 23:50:45 | FromDiscord | <scoopahdoopah> I mean u can set the allocator that's in context but I'd rather just like not deal with that |
| 23:51:41 | FromDiscord | <_timurski> In reply to @scoopahdoopah "the lsp is the": do you prefer the package manager? or vendoring? |
| 23:51:43 | skulk | nimlangserver absolutely falls over when you have files that (ab)use templates |
| 23:52:25 | skulk | otherwise it's good |
| 23:52:47 | FromDiscord | <nervecenter> In reply to @11clock "Context-aware autocompletion, goto definition,": 1 is meh, sublime's non context-aware one works fine for me. Sublime also has great goto and find functions. Realtime diag doesn't fit my use case well. LSP not super necessary with fast compile times. |
| 23:53:04 | FromDiscord | <nervecenter> Different projects and preferences I guess |
| 23:53:06 | FromDiscord | <11clock> True, when I was using Nim I was making extremely heavy use of macros, but I decided to change my approach to not require that anymore for my coding style. |
| 23:53:23 | FromDiscord | <_timurski> In reply to @11clock "Currently in Odin I": manual memory management isn't really so bad; one of the important things is thinking beyond "one object one allocation" and more towards "this system all lives together and can all be freed together", Casey had a video talking about this and it's pretty cool |
| 23:53:34 | FromDiscord | <_timurski> (arenas being an example of this) |
| 23:54:25 | * | dv^_^ quit (Quit: Ping timeout (120 seconds)) |
| 23:54:29 | FromDiscord | <scoopahdoopah> I do wanna work on being less reliant on an lsp cuz they end up freaking out at some point in every language and it just gets distracting |
| 23:54:48 | skulk | being less reliant on the LSP is, in my experience, just being more familiar with the codebase |
| 23:54:55 | FromDiscord | <_timurski> In reply to @nervecenter "1 is meh, sublime's": I've never really had an issue without an LSP either. auto completion is good enough with ctags, gotodefinition works well enough with `nim track` or just a simple grep, and idk about the last one |
| 23:54:57 | * | dv^_^ joined #nim |
| 23:55:01 | skulk | when I was creating my project many years ago, I didn't at all ened the LSP |
| 23:55:08 | skulk | but coming back to it, I feel myself wanting it a lot |
| 23:57:40 | FromDiscord | <11clock> In reply to @_timurski "I've never really had": Does nim track work in vs code now? |
| 23:57:55 | FromDiscord | <_timurski> In reply to @11clock "Does nim track work": i just wrote a neovim plugin for it |