<< 06-06-2026 >>

00:08:12*shanoaice quit (Quit: The Lounge - https://thelounge.chat)
00:08:52*shanoaice joined #nim
03:33:14*rockcavera joined #nim
04:00:57FromDiscord<nevillegg> In reply to @nikolac1 "hello": Hey
05:02:16FromDiscord<nikolac1> Hi, whats up?
05:02:34FromDiscord<nikolac1> Im new here and new to nim, any advice for a beginner? 🙂
05:09:12FromDiscord<mr_rowboto> In reply to @nikolac1 "Im new here and": 👋↵- Ask questions↵- Code something you like 🙂
05:09:54FromDiscord<nikolac1> Great advice thanks 😄
05:10:09FromDiscord<mr_rowboto> What are you planning to build with nim?
05:10:30FromDiscord<nikolac1> I started with a discord bot for learning
05:10:38FromDiscord<mr_rowboto> That's nice
05:10:50FromDiscord<nikolac1> For my learning, discord bot is to arrange some games
05:10:58FromDiscord<nikolac1> Text based
05:11:10FromDiscord<mr_rowboto> 👀 NICE
05:11:28FromDiscord<mr_rowboto> I've done stuff like that in the past with other language
05:11:37FromDiscord<nikolac1> Vibe coded it first now trying to understand the code
05:11:54FromDiscord<nikolac1> But I complicated it too much for start
05:12:12FromDiscord<mr_rowboto> it happens
05:12:23FromDiscord<mr_rowboto> second try gets easier
05:12:44FromDiscord<nikolac1> True! What are you building?
05:12:49FromDiscord<mr_rowboto> how are you communicating with the discord API?
05:13:06FromDiscord<mr_rowboto> In reply to @nikolac1 "True! What are you": My main project is a game engine for a voxel game I want to build.
05:13:10FromDiscord<nikolac1> Dimscord
05:13:27FromDiscord<mr_rowboto> From that I've spawned some other projects that I share
05:13:56FromDiscord<nikolac1> Cool sounds complicated
05:14:04FromDiscord<mr_rowboto> over all it's super fun
05:14:23FromDiscord<mr_rowboto> In reply to @nikolac1 "Dimscord": noted, I didn't know this existed
05:15:04FromDiscord<nikolac1> First thing that popped up on google search and seems to work great even though I had some trouble while setting up project
05:15:31FromDiscord<nikolac1> Couldnt find dimscord file on build, now I am running it without project
05:15:38FromDiscord<mr_rowboto> cool
07:01:16*tiorock joined #nim
07:01:17*tiorock quit (Changing host)
07:01:17*tiorock joined #nim
07:01:17*rockcavera is now known as Guest3761
07:01:17*tiorock is now known as rockcavera
07:04:09*Guest3761 quit (Ping timeout: 248 seconds)
08:11:48*tokyovigilante quit (Remote host closed the connection)
08:12:22*tokyovigilante joined #nim
08:48:32FromDiscord<nevillegg> In reply to @nikolac1 "Cool sounds complicated": warning : this server is toxic.
09:00:03FromDiscord<nikolac1> Why would you say that
09:09:27*emery quit (Read error: Connection reset by peer)
09:09:42*emery joined #nim
10:05:48FromDiscord<Phil> In reply to @nikolac1 "Why would you say": You may read #appdev if you wish, they were just frustrated that people didn't react too kindly to having pointed out to them that being rude to other server members will lead to rude responses.
10:07:03FromDiscord<Phil> In reply to @nikolac1 "Im new here and": In general, a project you code to solve a problem you're interested in is going to teach you the most you possibly can.↵I'd recommend explicitly not using an LLM at least at the start so you can get familiar with the syntax and have more opportunity to run into problems that'll lead to you learning more concepts
10:07:32FromDiscord<Phil> Or code something, than have an LLM code something up and compare the two solutions
10:15:20*xet7 quit (Remote host closed the connection)
10:17:36FromDiscord<asviest> In reply to @nikolac1 "Im new here and": I advise you to look at https://nim-lang.org/docs/manual.html↵It very good source for learning nim. In addition, people still use unsafeAddr, even though it was replaced by addr and has been deprecated. This should be avoided. IMHO don't use nimble, use atlas or nimby. And for nim installation, recommended thing is grabnim
10:18:21FromDiscord<nikolac1> What a kind server 🙂
10:18:30FromDiscord<nikolac1> Thanks for both replies
10:19:15FromDiscord<nikolac1> Yeah I just used llm because the discord bot example seemed too advanced for me and wanted to skip that part
11:11:26FromDiscord<icedryst> is the main/most stable way to use nim still through choosenim, nimble, and nim-lang-server?
11:12:18FromDiscord<icedryst> i see many suggestions with toolings and it is a bit confusing :(
11:25:22strogon14Instead of choosenim I would use grabnim.
11:28:19strogon14Nimble is still the de-facto package manager and your project should have a nimble file if you want others to use it. Some (many?) use atlas to set up their project dependencies, though.
11:33:50strogon14For an LS, there are two choices, nimlangserver and nimlsp. Use the one supported by youyr editor of choice.
11:38:12FromDiscord<icedryst> In reply to @strogon14 "For an LS, there": i see i didn't know about grabnim before. ↵my editor of choice was nvim so ...
11:38:28FromDiscord<icedryst> (edit) "before." => "before, thank you."
13:20:16FromDiscord<mr_rowboto> In reply to @icedryst "is the main/most stable": `choosenim` is officially recomended, but in practice, just use `grabnim`.↵Same for `nimble` vs `atlas` or `nimby`.
13:20:54FromDiscord<mr_rowboto> In reply to @icedryst "i see many suggestions": Yeah... tooling _is_ confusing right now.
13:55:19*acidsys quit (Ping timeout: 245 seconds)
13:57:24*acidsys joined #nim
14:04:26*kick455 joined #nim
14:04:41*jjido joined #nim
14:06:33*oculux quit (Ping timeout: 252 seconds)
14:24:02*joast quit (Quit: Leaving.)
15:05:15*beholders_eye joined #nim
15:20:12*jjido quit (Ping timeout: 245 seconds)
15:23:49*joast joined #nim
15:57:03*oculux joined #nim
16:00:27*kick455 quit (Ping timeout: 246 seconds)
16:12:55FromDiscord<pmunch> I still use `choosenim` and `nimble` and don't have any issues with them
16:13:20FromDiscord<pmunch> I use `nimlsp` instead of `nimlangserver` though
16:16:13FromDiscord<pmunch> sent a code paste, see https://play.nim-lang.org/#pasty=tghkyLbF
16:16:26FromDiscord<pmunch> (edit) "https://play.nim-lang.org/#pasty=fNurgmsH" => "https://play.nim-lang.org/#pasty=JjxweuaV"
16:17:00FromDiscord<pmunch> Only way I'm able to pass those enum values is with the `enumSym` macro 🤔
16:17:12FromDiscord<pmunch> (edit) "https://play.nim-lang.org/#pasty=ITIwUSag" => "https://play.nim-lang.org/#pasty=nNHefhFA"
16:43:21FromDiscord<zoranames> guys do we think we should discourage sdks that generate code with templates? because its hard to understand documentaiton by reading the code?
16:54:35*cws quit (Ping timeout: 268 seconds)
17:51:00FromDiscord<anuke> sent a long message, see https://pasty.ee/rbFvAdEo
18:00:03*cws joined #nim
18:52:07FromDiscord<manekobox> In reply to @anuke "What do people actually": Zed personally
18:52:17FromDiscord<manekobox> Nimlangserver freaks out sometimes though
18:59:28FromDiscord<anuke> sent a long message, see https://pasty.ee/NauJHnQB
19:00:09FromDiscord<anuke> (Note that the issues occur regardless of whether I use macros or not, it happens even with a tiny test project that depends on some gamedev libraries)
19:04:01*SchweinD1 quit (Quit: WeeChat 4.8.0-dev)
19:06:16FromDiscord<manekobox> In reply to @anuke "I don't know if": I'd assume it's Nimlangserver's problem because the process spikes to 2GB+ RAM usage randomly
19:06:28FromDiscord<manekobox> Nimlsp's been mentioned a few times here though
19:06:33FromDiscord<manekobox> You can try it out
19:06:45FromDiscord<anuke> Does that work with VSC?
19:07:10FromDiscord<manekobox> Their Github page says there's 2 plugins on VSC for it
19:09:14FromDiscord<manekobox> https://github.com/PMunch/nimlsp
19:09:20FromDiscord<manekobox> The Github page in question
19:21:29FromDiscord<pmunch> Both NimLSP and nimlangserver uses the LSP protocol, so they should be drop in replacements for each other.
19:22:04FromDiscord<pmunch> I say should be, because as Maneko mentions some people find that one works better than the other
19:25:26FromDiscord<mr_rowboto> In reply to @pmunch "Both NimLSP and nimlangserver": `nimlangserver` never worked for me, idk why I never tried `nimlsp`, just installed.
19:26:06FromDiscord<nnsee> if you pull the mask off both of these scooby doo villains you'll find it's all just nimsuggest under the hood
19:26:52FromDiscord<mr_rowboto> Yesterday I found two ancient `nimlangserver` processes while doing a casual `ps ax | grep nim`. They've been there eating my macbook for months 😂
19:27:16FromDiscord<nnsee> you haven't rebooted for months? that's pretty impressive
19:27:24FromDiscord<mr_rowboto> In reply to @nnsee "you haven't rebooted for": Macbook things.
19:27:39FromDiscord<manekobox> I don't think that's macbook things
19:27:48FromDiscord<manekobox> 😭
19:28:04FromDiscord<mr_rowboto> it has always beem the case for me 😐
19:28:06FromDiscord<manekobox> And it just stays alive????
19:28:10FromDiscord<mr_rowboto> yah
19:28:13FromDiscord<manekobox> I mean it's probably in power
19:29:13FromDiscord<nnsee> i like having the newest kernel and haven't bothered to set up livepatch so i reboot pretty frequently
19:30:02FromDiscord<mr_rowboto> (edit) "beem" => "been"
19:31:22FromDiscord<mr_rowboto> In reply to @nnsee "if you pull the": If `nimlsp` also misbehaves, I'll uninstall both :Cryy:
19:32:03FromDiscord<pmunch> It probably all comes down to improving nimsuggest.. Hopefully Nim 3 will have a better tool for this
19:32:51FromDiscord<mr_rowboto> In reply to @manekobox "I mean it's probably": when it runs out of power, and you charge it back... everything is restored
19:36:53FromDiscord<manekobox> In reply to @mr_rowboto "when it runs out": Huh
19:36:55FromDiscord<manekobox> Weird
19:37:04FromDiscord<manekobox> Including background processes?
19:37:21FromDiscord<manekobox> In reply to @mr_rowboto "If `nimlsp` also misbehaves,": Simply become the lsp
19:46:56*xet7 joined #nim
19:57:28FromDiscord<mr_rowboto> In reply to @manekobox "Simply become the lsp": Well, that's what I've been for the last year 😂
19:58:28FromDiscord<mr_rowboto> In reply to @manekobox "Including background processes?": Welp, judging for the amount of times I ran out of power, and how old those processes were (they were running on things I haven't touched for months)... I'd say yeah!
19:58:46FromDiscord<mr_rowboto> I know a lot of people hate it, but MacOS should never be underestimated.
20:07:42FromDiscord<_timurski> I mean I feel like this is just a sign of bad organization more than anything
20:08:43FromDiscord<_timurski> I use all 16 desktops on my Mac to work on many things and I have no problem restarting because it's easy to get back to where I was
20:09:21FromDiscord<_timurski> like why do you have things open that you're not using for weeks/months?
20:09:48FromDiscord<nnsee> people's workflows are just different i suppose
20:16:00*emery quit (Read error: Connection reset by peer)
20:16:27*emery joined #nim
20:16:34*emery quit (Read error: Connection reset by peer)
20:16:59*emery joined #nim
20:29:09FromDiscord<mr_rowboto> In reply to @_timurski "like why do you": ?????
20:29:12FromDiscord<mr_rowboto> 😂
20:29:21FromDiscord<mr_rowboto> Why would I restart a computer that works perfectly fine?
20:30:14FromDiscord<_timurski> memory pressure on Mac tends to rise over time without restarting
20:30:27FromDiscord<_timurski> like, SWAP rarely goes down
20:30:44FromDiscord<mr_rowboto> memory is there to be used
20:30:56FromDiscord<_timurski> you're missing my point
20:31:04FromDiscord<mr_rowboto> I am not. As long as it'snot hitting the limits, I don't care.
20:31:08FromDiscord<_timurski> increasing memory pressure leads to overall degradation of performance
20:31:12FromDiscord<mr_rowboto> (edit) "it'snot" => "it's not"
20:31:18FromDiscord<_timurski> (edit) "increasing" => "increased"
20:31:21FromDiscord<mr_rowboto> In reply to @mr_rowboto "Why would I restart": ^
20:31:29FromDiscord<_timurski> I guess if you're not running anything intense then yeah
20:31:44FromDiscord<mr_rowboto> am I not?
20:31:47FromDiscord<_timurski> In reply to @_timurski "like why do you": okay but like still
20:31:50FromDiscord<mr_rowboto> I must be a really good programmer.
20:31:50FromDiscord<_timurski> why would you do this
20:32:03FromDiscord<_timurski> it just means you're not running anything intense
20:32:08FromDiscord<_timurski> nothing more nothing less
20:32:24FromDiscord<_timurski> In reply to @_timurski "why would you do": like how do you stay organized with that?
20:32:33FromDiscord<_timurski> or do you just not bother
20:32:54FromDiscord<_timurski> like the less stuff you have open the easier it is in general to keep everything easy to reach and such
20:32:55FromDiscord<mr_rowboto> What Ras say. I have my workflow different from yours.
20:33:00FromDiscord<mr_rowboto> (edit) "workflow" => "workflow,"
20:33:16FromDiscord<mr_rowboto> And if you're worried by the "intensity" of what I run... I'd say I run pretty heavy stuff here.
20:33:17FromDiscord<_timurski> thought ending phrase
20:33:34FromDiscord<mr_rowboto> (edit) "say." => "said."
20:33:36FromDiscord<_timurski> (edit) "ending" => "terminating"
20:33:47FromDiscord<mr_rowboto> In reply to @_timurski "like the less stuff": duh
20:33:54FromDiscord<mr_rowboto> Then close stuff.
20:34:05FromDiscord<mr_rowboto> I close all things I don't use. That's how I stay organized.
20:34:22FromDiscord<_timurski> alright
20:35:59FromDiscord<manekobox> In reply to @_timurski "like how do you": I get lost with like 5 foreground processes running I don't know how you'd manage a 1 month old workspace 😭
20:36:25FromDiscord<mr_rowboto> You don't.
20:36:36FromDiscord<mr_rowboto> You close the things that you don't use, that doesn't imply restarting your computer.
20:39:05FromDiscord<manekobox> Okay well
20:39:06FromDiscord<manekobox> Fair
20:39:29FromDiscord<_timurski> In reply to @mr_rowboto "And if you're worried": do you never have issues with memory pressure?
20:39:36FromDiscord<mr_rowboto> In reply to @_timurski "do you never have": No.
20:39:50FromDiscord<mr_rowboto> Like, I have to restart from time to time, but it can be months.
20:39:58FromDiscord<_timurski> hmm
20:40:10FromDiscord<_timurski> makes sense
20:52:17FromDiscord<asviest> In reply to @mr_rowboto "If `nimlsp` also misbehaves,": I deleted it two years ago and only use syntax highlighting now btw
20:52:47*emery quit (Read error: Connection reset by peer)
20:53:14FromDiscord<tempestro> Mac does handle swap, memory compression and the like a lot better than other OSes IIRC
20:54:09FromDiscord<tempestro> How much RAM u have Row?
20:54:13FromDiscord<manekobox> In reply to @asviest "I deleted it two": Would you say it made you a better programmer (not speed wise)
20:57:08*emery joined #nim
20:57:25FromDiscord<asviest> In reply to @manekobox "Would you say it": I don't know, maybe, but it's more like tools don't affect skill, only speed
20:57:31FromDiscord<mr_rowboto> In reply to @tempestro "How much RAM u": 32
20:57:53FromDiscord<mr_rowboto> In reply to @tempestro "How much RAM u": This is actually the right question.
21:14:31*SchweinDeBurg joined #nim
21:14:49*SchweinD1 joined #nim
21:19:05*SchweinDeBurg quit (Ping timeout: 261 seconds)
21:25:49FromDiscord<anuke> In reply to @asviest "I deleted it two": You don't have any form of jump-to-definition/hover documentation/error checking?
21:44:12FromDiscord<mratsim> In reply to @tempestro "Mac does handle swap,": Linux also has zram and zswap and one is on by default iirc
21:54:23FromDiscord<asviest> In reply to @anuke "You don't have any": I use Ctrl+F for it. For errors I see console output
21:54:56FromDiscord<anuke> I see
21:55:32FromDiscord<anuke> As someone who has had jump-to-definition and proper error output for years I just don't find that acceptable anymore, I guess other languages have spoiled me. Checking the console every time when my project takes 30+ sec to compile destroys productivity
21:56:09FromDiscord<anuke> (edit) "As someone who has had jump-to-definition and proper error output for years ... I" added "elsewhere,"
21:56:16FromDiscord<anuke> (edit) "anymore," => "anymore."
21:57:17FromDiscord<_timurski> 🤷‍♂️
21:57:29FromDiscord<anuke> Similarly with autocomplete (not the AI kind, the "here's what procs I can call with this" kind)
21:57:59FromDiscord<_timurski> works just fine for a lot of people, in the grand scheme of things, typing is the easiest part of programming
21:58:05FromDiscord<_timurski> (edit) "works just fine for a lot of people, ... in" added "and"
22:00:03FromDiscord<anuke> I'm sure writing COBOL or putting together blocks of code in Scratch also works fine for a lot of people, but that doesn't mean I want to put myself through it. In general, it's hard to go back once you realize how convenient other tools have it.
22:02:41*xet7 quit (Remote host closed the connection)
22:09:45FromDiscord<_timurski> it's really just not as bad as you think it might be
22:13:07FromDiscord<anuke> I mean, I've been doing it almost every day for actual years on my codebase (only ctrl+f for definitions and console output for errors), so I do know
22:14:12FromDiscord<anuke> I know I am not entitled to anything from an open source project, I'm just frustrated that seemingly so many people have tried to get nimsuggest/nimlsp/nimlangserver working, and yet it still somehow doesn't (for me, perhaps my setup is just flawed)
22:15:50FromDiscord<anuke> The Jetbrains IntelliJ plugin is nearly there - it doesn't use nimsuggest or LSP or langserver at all, has instant docs/definitions... but is sadly closed source and abandoned, and doesn't have proper syntax highlighting. It's so close.
22:23:41FromDiscord<_timurski> In reply to @anuke "I mean, I've been": my bad for assuming otherwise
22:23:49FromDiscord<_timurski> hmm
22:24:07FromDiscord<anuke> I am seriously considering decompiling the IJ plugin and seeing if I can "fix" it myself
22:24:25FromDiscord<anuke> ...assuming they haven't obfuscated it, which would be a bit evil
22:34:05*xet7 joined #nim