00:36:48 | FromDiscord | <Robyn [She/Her]> https://github.com/The-Ticking-Clockwork/NULID/issues/3 huh... this is weird |
00:42:30 | FromDiscord | <Robyn [She/Her]> seems like a regression in Nim but unsure |
00:49:59 | * | tiorock joined #nim |
00:49:59 | * | rockcavera is now known as Guest3285 |
00:49:59 | * | Guest3285 quit (Killed (tantalum.libera.chat (Nickname regained by services))) |
00:49:59 | * | tiorock is now known as rockcavera |
00:52:05 | * | tiorock joined #nim |
00:52:05 | * | rockcavera is now known as Guest3813 |
00:52:05 | * | tiorock is now known as rockcavera |
00:54:44 | * | Guest3813 quit (Ping timeout: 252 seconds) |
01:05:24 | * | rockcavera quit (Remote host closed the connection) |
01:08:13 | FromDiscord | <Elegantbeef> `Int128 isnot SomeInteger` |
01:08:14 | FromDiscord | <Elegantbeef> Where even is that `encode` declared? |
01:12:41 | FromDiscord | <Elegantbeef> https://github.com/The-Ticking-Clockwork/Crockford-Base32-Nim/blob/main/src/crockfordb32.nim#L5-L9 here is your problem |
01:15:42 | FromDiscord | <Elegantbeef> Probably want to use `querySettingSeq(lazyPaths)` or just y'know `-d:crockfordb32Nint128` |
01:16:40 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "https://github.com/The-Ticking-Clockwork/Crockford-": that worked perfectly fine beforehand, and I tested that it returned true manually (with a comp time echo) |
01:16:58 | FromDiscord | <Elegantbeef> Sure, but it's still a bit ugh |
01:17:01 | FromDiscord | <Robyn [She/Her]> from my understanding, `when` doesn't create a new scope like `if` |
01:17:29 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=GRAFHAVj |
01:17:45 | FromDiscord | <Elegantbeef> Like that's practically what you're doing inside a `compiles(...)` |
01:18:13 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "Probably want to use": i wish Nimble had features like in Cargo, so NULID could just enable that feature |
01:18:39 | FromDiscord | <Elegantbeef> If you use query setting it can find `nint128` in the path |
01:19:22 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "It shouldn't be a": and why is that an issue? since this condition does return true (`HasNint` evaluates to true), I will use the query setting though, looks cleaner |
01:19:30 | FromDiscord | <Robyn [She/Her]> I just think this should work |
01:19:36 | FromDiscord | <Elegantbeef> It doesn't return true |
01:19:40 | FromDiscord | <Elegantbeef> I just tested it |
01:19:47 | FromDiscord | <Robyn [She/Her]> it does in the NULID test |
01:20:12 | FromDiscord | <Robyn [She/Her]> because NULID depends on nint128, so crockfordb64 can 'see' it |
01:20:42 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=ilSyCdMr |
01:21:58 | FromDiscord | <Elegantbeef> The latest nim did seemingly break `import` inside `compiles`, so that is possibly issue worthy |
01:28:21 | FromDiscord | <Robyn [She/Her]> ah shit i didn't put it in the correct scope that's why my echo worked |
01:28:31 | FromDiscord | <Elegantbeef> Casual |
01:28:39 | FromDiscord | <Robyn [She/Her]> 😭 |
01:41:42 | * | xet7 quit (Remote host closed the connection) |
01:43:11 | * | xet7 joined #nim |
02:18:15 | FromDiscord | <amadaluzia> bild.png https://media.discordapp.net/attachments/371759389889003532/1341594671411105953/bild.png?ex=67b690e7&is=67b53f67&hm=799df6fc8861ec270755a878deed53fe57b9a1404205a77a5cf5ee5fe99f7da8& |
02:19:05 | FromDiscord | <amadaluzia> started reworking my IPC a small bit more, started using generics to remove some boilerplate get workspace, window, whatever code |
02:19:32 | FromDiscord | <amadaluzia> may also be compatible with more types i plan to write which is also nice \:) |
02:20:27 | FromDiscord | <amadaluzia> \ipc wrapper |
02:29:39 | * | beholders_eye quit (Ping timeout: 260 seconds) |
02:31:43 | * | xet7 quit (Read error: Connection reset by peer) |
02:36:04 | * | xet7 joined #nim |
03:57:32 | * | xutaxkamay quit (Ping timeout: 272 seconds) |
04:00:03 | * | xutaxkamay joined #nim |
04:06:10 | * | xutaxkamay quit (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
04:06:24 | * | xutaxkamay joined #nim |
05:32:51 | * | ntat joined #nim |
05:33:50 | FromDiscord | <enthus1ast.> In reply to @PMunch_ "I've been thinking about": I have written/in the process of writing one, it already powers a few production sites. But it's not Foss yet because I want to rewrite some parts of it, some parts are quite hacky |
05:36:34 | FromDiscord | <enthus1ast.> Maybe i should just opensource it noone cares about my hacky code 🙂 |
05:39:37 | FromDiscord | <enthus1ast.> Its basically a clone of boltcms in nim |
05:41:48 | FromDiscord | <explosiveend> does anybody have any good articles / blogs / videos on learning nim's macro / templating system? |
05:42:42 | FromDiscord | <demotomohiro> In reply to @explosiveend "does anybody have any": https://internet-of-tomohiro.pages.dev/nim/faq.en#frequently-asked-questions-about-nim-programming-language-macro |
05:43:50 | FromDiscord | <explosiveend> In reply to @demotomohiro "https://internet-of-tomohiro.pages.dev/nim/faq.en#f": ooo links to even more articles, perfect |
05:43:50 | FromDiscord | <explosiveend> thanks |
05:44:58 | FromDiscord | <lainlaylie> in addition, the macros documentation contains many AST examples↵https://nim-lang.org/docs/macros.html |
07:35:42 | FromDiscord | <pmunch> @explosiveend I also wrote this: https://peterme.net/metaprogramming-and-read-and-maintainability-in-nim.html |
07:57:54 | * | ntat quit (Quit: Leaving) |
08:19:17 | * | alexdaguy joined #nim |
09:20:47 | * | gshumway quit (Quit: .) |
09:23:05 | * | gshumway joined #nim |
09:48:45 | * | gshumway quit (Quit: .) |
09:59:05 | * | gshumway joined #nim |
10:15:55 | * | beholders_eye joined #nim |
11:06:36 | * | Jjp137_ quit (Ping timeout: 268 seconds) |
11:06:55 | * | Jjp137_ joined #nim |
12:20:01 | FromDiscord | <glisteringlime> right so |
12:20:02 | FromDiscord | <glisteringlime> my question is |
12:20:06 | FromDiscord | <glisteringlime> why does nim not let you do this https://media.discordapp.net/attachments/371759389889003532/1341746128646836305/image.png?ex=67b71df5&is=67b5cc75&hm=d516872f61c91b6df88fa453cb0572cf7896a4a36c49eec2b569451273259958& |
12:20:21 | FromDiscord | <glisteringlime> if it only let you use curly braces as code blocks, i would be the happiest person in the world |
12:20:22 | FromDiscord | <glisteringlime> genuinely |
12:20:28 | FromDiscord | <glisteringlime> because i hate tab-sensitive syntax |
12:21:01 | FromDiscord | <glisteringlime> you have the "block" tag but that's just so stupid because it's less efficient than a simple curly brace pair |
12:23:10 | FromDiscord | <nnsee> this again? |
12:23:19 | FromDiscord | <solitudesf> mods, inflict mental torment on this guy |
12:23:35 | FromDiscord | <glisteringlime> i asked a simple question |
12:24:13 | FromDiscord | <zumi.dxy> You could find an older version of Nim that does that 😉 |
12:24:33 | FromDiscord | <glisteringlime> In reply to @zumi.dxy "You could find an": my question was "why", not "what i can do" |
12:24:35 | Amun-Ra | glisteringlime: nim does not allow {} by design |
12:24:37 | Amun-Ra | next! |
12:24:44 | FromDiscord | <nnsee> In reply to @glisteringlime "i asked a simple": simple answer: this is how the language was designed |
12:24:49 | FromDiscord | <glisteringlime> In reply to @Amun-Ra "<@324150253370474496>: nim does not": i got that, but why |
12:24:54 | Amun-Ra | "by design" |
12:24:55 | FromDiscord | <glisteringlime> what's the point |
12:25:06 | FromDiscord | <nnsee> what is the point of any language's syntax? |
12:25:08 | FromDiscord | <glisteringlime> "by design" says literally nothing↵what justifies this design decision |
12:25:18 | Amun-Ra | and what was the python devs answer? |
12:25:19 | FromDiscord | <solitudesf> it looks better |
12:25:31 | Amun-Ra | it looks more readable, concise |
12:25:41 | FromDiscord | <nnsee> In reply to @glisteringlime ""by design" says literally": design decisions do not have to be objective or have any meaning other than "the dev liked it this way" |
12:25:55 | FromDiscord | <nnsee> (edit) "meaning" => "reasoning" |
12:26:05 | Amun-Ra | it allows writing code with typing less |
12:26:10 | FromDiscord | <bosinski2023> In reply to @glisteringlime ""by design" says literally": ok, some speculation - somebody observed Python/CoffeeScript/Scala do it - so lets copy the idea.. |
12:26:26 | FromDiscord | <glisteringlime> i'm genuinely considering writing a custom nim syntax parser that will turn {} into blocks |
12:26:28 | Amun-Ra | if it works - it works |
12:26:40 | FromDiscord | <solitudesf> do it |
12:26:42 | FromDiscord | <glisteringlime> In reply to @Amun-Ra "if it works -": the problem is that editors never handle it correctly |
12:26:43 | FromDiscord | <zumi.dxy> the reason why so many programming languages exist is the same reason why humans have preferences :) |
12:26:49 | FromDiscord | <planetis_m> In reply to @glisteringlime "because i hate tab-sensitive": using tabs is an error btw |
12:27:02 | FromDiscord | <glisteringlime> In reply to @planetis_m "using tabs is an": indentation, whatever |
12:27:06 | FromDiscord | <glisteringlime> you press tab to add indentation |
12:27:23 | FromDiscord | <glisteringlime> in like 99% of editors they'll convert to spaces |
12:27:51 | FromDiscord | <zumi.dxy> In reply to @planetis_m "using tabs is an": at least this one can be worked around |
12:28:07 | FromDiscord | <solitudesf> i never add indentation manually, when editing nim |
12:28:55 | FromDiscord | <nnsee> In reply to @glisteringlime "why does nim not": if you want a technical reason, as you seem to be really be hung up on _why_, the `a = {}` syntax is already used for something else other than defining procs (that is, defining sets) |
12:29:27 | FromDiscord | <glisteringlime> well sure, but then why even use an equals sign for functions/procs |
12:30:04 | FromDiscord | <glisteringlime> yet stay on colons for the rest of the various scopes you define |
12:30:12 | FromDiscord | <zumi.dxy> In reply to @nnsee "if you want a": same reason why 🅱️ython isn't really possible |
12:31:54 | FromDiscord | <nnsee> In reply to @glisteringlime "yet stay on colons": running code inside a block is not the same as defining something - in this case, defining a procedure. defining a procedure does exactly that, it doesn't run any code. using colons would create ambiguity with DSL syntax |
12:32:48 | FromDiscord | <solitudesf> In reply to @glisteringlime "well sure, but then": you assign value to symbols with `=`. why shouldn't it use `=`? |
12:33:37 | FromDiscord | <glisteringlime> i see, but does nim allow you to define code for any variable? |
12:33:48 | FromDiscord | <glisteringlime> because this looks like something exclusive to procs/funcs |
12:34:46 | FromDiscord | <glisteringlime> it's just a weird decision to me because if procs aren't variables, why would they use the assignment operator that is for variables |
12:34:55 | FromDiscord | <glisteringlime> if procs ARE variables, then I guess it makes sense |
12:35:16 | FromDiscord | <solitudesf> types are not variables. why do we `type A = object`? |
12:35:21 | FromDiscord | <nnsee> why does it have to be a variable? it's the syntax for defining something, anything |
12:35:31 | FromDiscord | <nnsee> defining consts, vars, procs, funcs |
12:36:46 | FromDiscord | <glisteringlime> the thing is that you're defining other code inside a proc |
12:37:21 | FromDiscord | <glisteringlime> it's weird because I would assume = is for variables |
12:37:37 | FromDiscord | <glisteringlime> yet, obviously, I can't really just pull the code from a proc |
12:37:51 | FromDiscord | <glisteringlime> it's just a weird token to choose |
12:38:24 | FromDiscord | <glisteringlime> that's what it is to me at laest |
12:38:27 | FromDiscord | <solitudesf> good thing every other language doesn't have weird things about it |
12:38:28 | FromDiscord | <glisteringlime> (edit) "laest" => "least" |
12:38:56 | FromDiscord | <glisteringlime> In reply to @solitudesf "good thing every other": You don't have to be sarcastic about it |
12:39:28 | FromDiscord | <nnsee> it's also irrelevant, the `{}` syntax for defining sets does not require `=` either, ie `toNum({A})` (random example from the manual) |
12:39:48 | FromDiscord | <nnsee> so it would collide with your proposed syntax regardless |
12:40:31 | FromDiscord | <glisteringlime> i mean there is this syntax `.{}` |
12:40:33 | FromDiscord | <bosinski2023> sent a code paste, see https://play.nim-lang.org/#pasty=tVwlgNcn |
12:40:45 | FromDiscord | <nnsee> In reply to @glisteringlime "i mean there is": further proving my point |
12:40:59 | FromDiscord | <nnsee> how many colons and curly brackets do you want to stuff into a proc definition |
12:41:39 | FromDiscord | <solitudesf> it literally doesn't matter, syntax discussions are late by ~15 years at this point. its not going to change. |
12:41:44 | FromDiscord | <glisteringlime> In reply to @nnsee "how many colons and": what it looks like to me is that nim doesn't have clear scoping, unless i'm wrong on that? |
12:42:08 | FromDiscord | <glisteringlime> because a block is a scope in most languages, and the syntax is typically curly braces |
12:42:38 | FromDiscord | <solitudesf> > nim doesn't have clear scoping↵what does this even mean |
12:42:42 | FromDiscord | <glisteringlime> In reply to @solitudesf "it literally doesn't matter,": the problem is, again, pretty much no editor ever handles it correctly |
12:43:14 | FromDiscord | <solitudesf> In reply to @glisteringlime "the problem is, again,": im sorry for your editor. it handles fine in mine. |
12:43:16 | FromDiscord | <glisteringlime> In reply to @solitudesf "> nim doesn't have": like, does a for loop define its own scope? if so, that would be a block↵↵does a proc define its own scope? |
12:43:48 | FromDiscord | <glisteringlime> In reply to @solitudesf "im sorry for your": every single one i've tested handles it wrong↵↵zed, vscode, sublime text, pulsar, etc |
12:44:18 | FromDiscord | <solitudesf> In reply to @glisteringlime "like, does a for": yes, obviously. |
12:44:45 | FromDiscord | <glisteringlime> In reply to @solitudesf "yes, obviously.": so the token like colon or equals sign has literally no meaning in terms of scope |
12:45:17 | FromDiscord | <solitudesf> In reply to @glisteringlime "so the token like": depends |
12:45:23 | FromDiscord | <nnsee> In reply to @glisteringlime "because a block is": the syntax in nim is indentation. the language is indentation sensitive. the compiler uses indentation to determine scope. different levels of indentation define blocks. the compiler is perfectly capable of determining where scope begins and where it ends, therefore, the language has "clear scoping". the language does not use curly brackets to indicate scope. i'm not sure how many differen |
12:47:00 | FromDiscord | <glisteringlime> sent a code paste, see https://play.nim-lang.org/#pasty=oHqrAtVK |
12:47:43 | FromDiscord | <glisteringlime> if it ends at the discard keyword, that's where most editors fail |
12:47:47 | FromDiscord | <solitudesf> obiously at indentation, that the entire point |
12:48:02 | FromDiscord | <nnsee> In reply to @glisteringlime "well, the problem is,": what? why on earth would it end at discard? |
12:48:10 | FromDiscord | <glisteringlime> right, but discard, basically, discards everything below in that scope, correct? |
12:48:13 | FromDiscord | <solitudesf> no |
12:48:14 | FromDiscord | <nnsee> no??? |
12:48:15 | FromDiscord | <solitudesf> what? |
12:48:22 | FromDiscord | <glisteringlime> that's what I was told earlier in this discord |
12:48:24 | FromDiscord | <glisteringlime> that's odd |
12:48:36 | FromDiscord | <glisteringlime> is there an equivalent of `pass` from python |
12:48:39 | FromDiscord | <solitudesf> show logs |
12:49:30 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "it's called `discard`": . |
12:50:00 | FromDiscord | <solitudesf> yes, discard does basically the same. what is the issue? |
12:50:26 | FromDiscord | <glisteringlime> well, if I put it inside some block, does that end the execution of code past the discard keyword |
12:51:00 | FromDiscord | <solitudesf> no. neither does pass. |
12:51:04 | FromDiscord | <nnsee> you seem to be really confused about what discord actually does. please refer to the manual https://nim-lang.org/docs/manual.html#statements-and-expressions-discard-statement |
12:51:13 | Amun-Ra | you need block and break for that |
12:51:15 | FromDiscord | <fabric.input_output> https://media.discordapp.net/attachments/371759389889003532/1341753967818051594/image.png?ex=67b72542&is=67b5d3c2&hm=e5c53c7194c3b066b0bec8484be9e55ee704c74c2645b544f447ffc29b0b0dab& |
12:51:35 | FromDiscord | <glisteringlime> wait wait |
12:51:50 | FromDiscord | <glisteringlime> why the hell was I always told pass discards everything below it |
12:51:53 | FromDiscord | <nnsee> (edit) "discord" => "discard" |
12:52:07 | FromDiscord | <glisteringlime> well i learned something |
12:52:08 | FromDiscord | <glisteringlime> amazing |
12:52:42 | FromDiscord | <fabric.input_output> pass is like a placeholder noop thing |
12:52:48 | FromDiscord | <nnsee> exactly the same as discard |
12:52:58 | FromDiscord | <nnsee> as an empty discard, that is |
12:53:02 | FromDiscord | <fabric.input_output> yeah |
12:54:21 | FromDiscord | <nnsee> In reply to @glisteringlime "why the hell was": https://docs.python.org/3/tutorial/controlflow.html#pass-statements |
12:54:33 | FromDiscord | <nnsee> as always, rtfm |
12:54:43 | FromDiscord | <glisteringlime> https://media.discordapp.net/attachments/371759389889003532/1341754842112196618/image.png?ex=67b72612&is=67b5d492&hm=c3d327258ab7f3295318bfb4ebf1ce7a2df45a1c74b94f08dfd8c4d527913642& |
12:54:58 | FromDiscord | <glisteringlime> right so that's unreachable code |
12:55:12 | FromDiscord | <glisteringlime> the only problem is, the editor still doesn't handle it the way it should imo, which is exiting the scope |
12:55:18 | FromDiscord | <glisteringlime> upon pressing enter on break |
12:55:29 | FromDiscord | <glisteringlime> i'll try the same on vscode |
12:55:32 | FromDiscord | <solitudesf> because it shouldn't do that. |
12:55:50 | FromDiscord | <glisteringlime> In reply to @solitudesf "because it shouldn't do": well why not? nothing you write there will ever be reached |
12:56:21 | FromDiscord | <nnsee> works for me on nvim |
12:58:49 | FromDiscord | <nnsee> https://asciinema.org/a/ZHFIfZrIIkTzalIhdgWxsKwss |
12:58:57 | FromDiscord | <nnsee> so the "no editor" thing is kinda your issue |
12:59:27 | FromDiscord | <solitudesf> In reply to @glisteringlime "well why not? nothing": true. fix your editor indentation hooks then. but even if it doesn't work. how is being indentation based worse than braces here? |
13:01:36 | FromDiscord | <glisteringlime> In reply to @solitudesf "true. fix your editor": curly braces explicitly define where a scope begins and where it ends in most languages, whereas indentation doesn't end until you dedent, and zed is particularly a PITA because it will go back to the indentation the line above is at, vscode at least handles that part correctly |
13:02:31 | FromDiscord | <solitudesf> again you are confusing language scope and whatever editor hurdles you're having |
13:02:34 | FromDiscord | <glisteringlime> it also means pasting code in might break stuff because it doesn't always paste with the right indentation |
13:02:37 | FromDiscord | <glisteringlime> so you have to reindent it |
13:03:11 | FromDiscord | <nnsee> if you're using an editor where pasting code doesn't work right, then you need to change editors... |
13:03:27 | FromDiscord | <glisteringlime> well no, it works correctly in both zed and vscode |
13:03:43 | FromDiscord | <glisteringlime> nvim you have to manually indent it, or format those lines of code and hope it works correctly |
13:03:58 | FromDiscord | <nnsee> i have no idea what you're talking about |
13:04:01 | FromDiscord | <bosinski2023> In reply to @glisteringlime "curly braces explicitly define": when your scopes grow high - it might help to use 'vertical lines' to support your vision. Sublime has a plugin for that, VS-Code as well. |
13:04:08 | FromDiscord | <nnsee> i've never had to "manually indent" lines when pasting anything |
13:04:28 | FromDiscord | <glisteringlime> odd |
13:04:33 | FromDiscord | <glisteringlime> i've had to do that many times for some reason |
13:04:42 | FromDiscord | <zumi.dxy> In reply to @nnsee "i've never had to": had to do that with zed because it keeps fucking up :( |
13:04:48 | FromDiscord | <zumi.dxy> other editors, no |
13:04:52 | FromDiscord | <nnsee> zed just sounds half-baked then |
13:05:04 | FromDiscord | <glisteringlime> In reply to @nnsee "zed just sounds half-baked": not on zed, but on nvim i did have to do that many times |
13:05:09 | FromDiscord | <glisteringlime> (edit) "did" => "do" |
13:05:23 | FromDiscord | <zumi.dxy> https://media.discordapp.net/attachments/371759389889003532/1341757526349451315/simplescreenrecorder-2025-02-14_22.13.51.mp4?ex=67b72892&is=67b5d712&hm=ca3df29ec841f5013b86f1ce06c9de5e3887929a1a42f15a0078f5b08f33fad1& |
13:05:41 | FromDiscord | <zumi.dxy> i mean, it's logical but that's not what I meant |
13:05:49 | FromDiscord | <zumi.dxy> (edit) "what" => "the indentation" |
13:05:51 | FromDiscord | <nnsee> In reply to @zumi.dxy "": yeah, i would hate if my editor did that |
13:05:52 | FromDiscord | <nnsee> like no thank you |
13:06:08 | FromDiscord | <zumi.dxy> that's pretty much the only con of indent-based syntax i can see |
13:06:16 | FromDiscord | <zumi.dxy> other than that it barely matters |
13:06:29 | FromDiscord | <glisteringlime> for functionality, it has next to no meaning |
13:06:35 | FromDiscord | <glisteringlime> and it makes it easier to read |
13:06:44 | FromDiscord | <zumi.dxy> with C and go I can just be lazy and let autoformat do its thing |
13:06:45 | FromDiscord | <nnsee> oh, vim has that option too |
13:06:50 | FromDiscord | <glisteringlime> you also don't get the problem of missing a bracket or something |
13:06:51 | FromDiscord | <nnsee> `set paste` and `set nopaste` |
13:06:55 | FromDiscord | <nnsee> does exactly what your video shows |
13:06:58 | FromDiscord | <nnsee> but... why |
13:07:02 | FromDiscord | <nnsee> preferences, i guess |
13:08:23 | FromDiscord | <glisteringlime> actually, there is ONE thing I haven't tried |
13:08:25 | FromDiscord | <glisteringlime> one sec |
13:11:45 | FromDiscord | <glisteringlime> yeah I don't think there's an easy option for pasting |
13:12:14 | FromDiscord | <glisteringlime> or any indentation stuffs |
13:23:08 | FromDiscord | <fabric.input_output> In reply to @zumi.dxy "": is that neovim? |
13:23:23 | FromDiscord | <nnsee> zed, as far as i understood |
13:23:59 | FromDiscord | <fabric.input_output> didn't zed go down the ai integration editor part instead of the configurable, usable editor one? |
13:24:05 | FromDiscord | <fabric.input_output> (edit) "part" => "path" |
13:33:03 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "didn't zed go down": it's both |
13:33:13 | FromDiscord | <glisteringlime> it's becoming extremely configurable as it goes |
13:33:28 | FromDiscord | <glisteringlime> and it also has AI integration that works pretty well |
13:33:38 | FromDiscord | <glisteringlime> and AI is optional btw, they don't force it on you |
13:33:56 | FromDiscord | <glisteringlime> you can even use your own local models |
13:34:26 | FromDiscord | <glisteringlime> and the whole thing, including the server-side, is entirely open-source |
13:35:47 | FromDiscord | <glisteringlime> main thing about it for me is how ridiculously fast it is |
13:36:08 | FromDiscord | <glisteringlime> and collaboration works flawlessly, it's not like liveshare where it breaks every 5 seconds because of some weird desync |
13:36:58 | FromDiscord | <xtrayambak> Has anyone gotten Nim compiling with Bionic before? |
13:37:04 | FromDiscord | <xtrayambak> (edit) "Has anyone gotten Nim compiling with Bionic ... before?" added "libc" |
13:40:33 | FromDiscord | <nnsee> In reply to @glisteringlime "it's becoming extremely configurable": extremely configurable except you can't disable the autoindent behaviour and pasting code is broken? |
13:41:24 | FromDiscord | <nnsee> In reply to @glisteringlime "and collaboration works flawlessly,": i would never want to collaborate in real-time on code. ew, please stay away from my editor. we invented version control for a reason |
13:41:39 | FromDiscord | <zumi.dxy> come on, it's multiplayer notepad 😏 |
13:47:49 | FromDiscord | <glisteringlime> In reply to @nnsee "extremely configurable except you": it's an extension that is borked |
13:48:34 | FromDiscord | <glisteringlime> In reply to @nnsee "i would never want": version control is nice and it's the proper way to do things, but sometimes it's really nice collabing live on some code |
13:49:00 | FromDiscord | <glisteringlime> especially if it's not something that is supposed to be public code hosted on a git repo |
13:50:20 | FromDiscord | <glisteringlime> you don't have to use any of the collab features either |
13:50:39 | FromDiscord | <glisteringlime> all of these features stay out of your way when you don't need them |
14:03:11 | FromDiscord | <nnsee> In reply to @glisteringlime "you don't have to": sure, but my not using those features doesn't change the fact that the editor's devs' priorities seem to be absolutely misaligned and even orthogonal to what i'm looking for in an editor |
14:03:45 | FromDiscord | <nnsee> and i'd be really surprised if the indentation logic is provided by the plugin, not the editor itself. i'm assuming the editor already has logic for indentation |
14:04:44 | * | alexdaguy quit (Quit: WeeChat 4.5.1) |
14:38:25 | FromDiscord | <explosiveend> In reply to @glisteringlime "and collaboration works flawlessly,": i’d second this, collab on zed >> collab on vs |
14:38:49 | FromDiscord | <explosiveend> only used it a couple of times but nice to have when u want it |
14:39:06 | * | ntat joined #nim |
14:39:22 | FromDiscord | <explosiveend> In reply to @pmunch "<@233754003605946368> I also wrote": neat i’ll check this out too thanks |
14:43:31 | FromDiscord | <odexine> oh the zed guy is back |
14:44:21 | FromDiscord | <odexine> well was i assume |
14:46:28 | FromDiscord | <antomfdez> there is some HeapAlloc but for linux api? |
14:50:22 | FromDiscord | <nnsee> In reply to @antomfdez "there is some HeapAlloc": malloc? |
14:50:54 | FromDiscord | <nnsee> i don't know why you would use HeapAlloc over malloc over windows either |
14:50:59 | FromDiscord | <nnsee> (edit) "over" => "on" |
14:54:06 | FromDiscord | <antomfdez> yeah i dont know im so used to allocate my shellcodes with HeapAlloc |
14:54:19 | FromDiscord | <antomfdez> but yeah maybe malloc is better |
14:56:16 | FromDiscord | <antomfdez> @nnsee nothing weird i just test small antivirus for small business |
14:56:51 | FromDiscord | <odexine> 🤔 |
14:57:26 | FromDiscord | <nnsee> In reply to @antomfdez "<@961485620075720734> nothing weird i": probably the wrong person to try and bs about this :) |
14:59:48 | FromDiscord | <antomfdez> its my job 😭 people always scared |
15:06:40 | FromDiscord | <fabric.input_output> you don't have to mention anything beyond the bare minimum technical intentions |
15:07:11 | FromDiscord | <nnsee> In reply to @antomfdez "its my job 😭": hey man, i work in offensive cybersec, i'm not judging |
15:07:27 | FromDiscord | <nnsee> but yeah, as fabricio said, we'd probably rather not know :) |
15:07:41 | FromDiscord | <antomfdez> its fine |
15:09:56 | FromDiscord | <nnsee> In reply to @antomfdez "its fine": are you not a "computer technician"? |
15:10:47 | FromDiscord | <nnsee> (edit) "technician"?" => "technician" apprentice?" |
15:10:59 | FromDiscord | <nnsee> kind of a weird position to be testing AV in |
15:21:57 | FromDiscord | <antomfdez> In reply to @nnsee "are you not a": not now |
15:22:14 | FromDiscord | <antomfdez> i mean my linkedin stil outdated |
17:39:56 | FromDiscord | <Robyn [She/Her]> How exactly would I check if Nim is installed in the Nimble dir with compilesettings? |
17:40:25 | FromDiscord | <Robyn [She/Her]> When running without nimble, the `nimblePaths` is empty, and `searchPaths` only includes the stdlib paths |
17:40:49 | FromDiscord | <Robyn [She/Her]> Ah, lazy paths worked |
17:42:13 | FromDiscord | <nebulousiris> Have any of you managed to setup NimLangServer for zed? |
17:46:10 | FromDiscord | <Robyn [She/Her]> Ugh optional dependencies are a pain... |
17:46:22 | FromDiscord | <Robyn [She/Her]> Define flag it is |
18:06:09 | * | coldfeet joined #nim |
18:25:48 | FromDiscord | <fl4shk> I guess I'd better learn file I/O in Nim |
18:25:57 | FromDiscord | <fl4shk> (edit) "I guess I'd better learn file I/O in Nim ... " added "for something I'm doing" |
18:28:56 | FromDiscord | <fl4shk> Need to translate my voxel 3D model's vertices |
18:29:10 | FromDiscord | <fl4shk> into an initialization for an FPGA block RAM |
18:31:01 | * | coldfeet quit (Quit: Lost terminal) |
19:17:40 | FromDiscord | <monkey085395> sent a code paste, see https://play.nim-lang.org/#pasty=OzLntgTc |
19:24:10 | FromDiscord | <amadaluzia> For any library devs, would you let the end user handle a JSON parsing error or do you handle it yourself? |
19:24:24 | FromDiscord | <amadaluzia> sent a code paste, see https://play.nim-lang.org/#pasty=brMODuMU |
19:27:49 | FromDiscord | <monkey085395> @pmunch hello, can you help me sign up for the forums? |
19:32:23 | FromDiscord | <pmunch> In reply to @monkey085395 "<@392962235737047041> hello, can you": Sure, just PM me your email address and preferred username |
19:32:46 | FromDiscord | <pmunch> I'm out clearing snow ATM though, so give me a while |
19:36:19 | FromDiscord | <monkey085395> sent a code paste, see https://play.nim-lang.org/#pasty=IMYSzRMb |
19:41:45 | * | ntat quit (Quit: Leaving) |
19:59:53 | FromDiscord | <lainlaylie> In reply to @amadaluzia "For any library devs,": let the user handle it, and definitely don't print anything |
20:00:05 | FromDiscord | <Elegantbeef> amadaluzia that's up to you, either way the user is going to have to have a check |
20:56:45 | FromDiscord | <.bobbbob> you can throw a new exception with any string info you want contained in it |
22:15:21 | * | fallback quit (Ping timeout: 246 seconds) |
22:16:00 | * | rockcavera joined #nim |
22:36:06 | FromDiscord | <glisteringlime> here I was hating nim |
22:36:41 | FromDiscord | <glisteringlime> here I am now, still hating nim, yet attempting to write an entire C to C3 transpiler in it |
22:46:39 | * | fallback joined #nim |
22:55:16 | * | tiorock joined #nim |
22:55:16 | * | rockcavera is now known as Guest3291 |
22:55:16 | * | tiorock is now known as rockcavera |
22:56:22 | FromDiscord | <glisteringlime> also, one thing I really hate with indentation-sensitivity↵↵if you paste some code in or you mess up indentation in some way, you're basically screwed |
22:56:35 | FromDiscord | <glisteringlime> you have to now go through the entire thing, trying to fix up the indentation, hoping it'll work correctly |
22:56:53 | FromDiscord | <glisteringlime> because there is no one single way that editors handle it |
22:57:20 | FromDiscord | <glisteringlime> this is literally something i'm encountering as I speak |
22:57:26 | * | tiorock joined #nim |
22:57:26 | * | rockcavera is now known as Guest2072 |
22:57:26 | * | Guest2072 quit (Killed (platinum.libera.chat (Nickname regained by services))) |
22:57:26 | * | tiorock is now known as rockcavera |
22:57:41 | FromDiscord | <fabric.input_output> why did your indentation break |
22:57:54 | FromDiscord | <glisteringlime> because the code used different tabulation |
22:57:57 | FromDiscord | <glisteringlime> and the whole thing imploded |
22:58:13 | FromDiscord | <fabric.input_output> you using tabs? |
22:58:18 | FromDiscord | <glisteringlime> ..spaces |
22:58:22 | FromDiscord | <glisteringlime> it's called tabulation |
22:58:25 | FromDiscord | <fabric.input_output> or different indent size |
22:58:28 | FromDiscord | <glisteringlime> indent size |
22:58:55 | FromDiscord | <glisteringlime> it's hell right now because it is literally impossible to tell what belongs where |
22:59:00 | FromDiscord | <fabric.input_output> honestly super ez to change it in vim/neovim |
22:59:09 | * | Guest3291 quit (Ping timeout: 252 seconds) |
22:59:14 | FromDiscord | <glisteringlime> yeah, but when you paste it in, it explodes in most editors |
22:59:19 | FromDiscord | <fabric.input_output> paste somewhere, change indentation size, then move it where you intended it to be |
22:59:33 | FromDiscord | <glisteringlime> it's easy to fix in languages where there's no indentation sensitivity |
22:59:39 | FromDiscord | <glisteringlime> you just format it, and it's done |
22:59:47 | FromDiscord | <fabric.input_output> stop using nim then |
22:59:53 | FromDiscord | <fabric.input_output> if you don't like indentation |
23:00:06 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "if you don't like": the problem is that I have to use langs which have this specific issue |
23:00:13 | FromDiscord | <glisteringlime> i have no other option |
23:00:25 | FromDiscord | <glisteringlime> i'm only using nim to try and learn it because i will quite probably need it |
23:00:28 | FromDiscord | <glisteringlime> python i'm required to use |
23:00:32 | FromDiscord | <glisteringlime> i have no option there |
23:00:49 | FromDiscord | <fabric.input_output> better find ways to deal with your problem than complain in the nim discord server's main channel then |
23:00:58 | FromDiscord | <glisteringlime> well, there aren't any |
23:01:08 | FromDiscord | <glisteringlime> and probably won't be, because indentation never works properly anywhere |
23:01:11 | FromDiscord | <glisteringlime> even discord handles it incorrectly |
23:01:14 | FromDiscord | <fabric.input_output> skill issue, I just gave you an option. the rest is editor misconfiguration |
23:01:26 | FromDiscord | <Robyn [She/Her]> In reply to @monkey085395 "hello, is there any": No but `type` is discouraged so you should use `typeof` |
23:01:45 | FromDiscord | <fabric.input_output> typedesc |
23:01:48 | FromDiscord | <Robyn [She/Her]> `type` is just a remnant of older Nim, functionally there's no difference, buuut |
23:02:00 | FromDiscord | <Robyn [She/Her]> In reply to @fabric.input_output "*typedesc": `type` < `typeof` < `typedesc` |
23:02:03 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "skill issue, I just": i'm not switching my editor over a language |
23:02:16 | FromDiscord | <glisteringlime> heck, vscode doesn't even appear to work correctly and there's like 5 different non-functional extensions |
23:02:20 | FromDiscord | <glisteringlime> (edit) "heck, vscode doesn't even appear to work correctly ... and" added "with nim" |
23:02:41 | FromDiscord | <fabric.input_output> tooling issue, take it with the tools |
23:02:49 | FromDiscord | <glisteringlime> zed kind-of works, but because of auto-indentation stuff it breaks everything |
23:02:55 | FromDiscord | <fabric.input_output> In reply to @battery.acid.bubblegum "`type` < `typeof` <": ? typeof(int)? |
23:02:56 | FromDiscord | <Robyn [She/Her]> In reply to @glisteringlime "you have to now": that is a con of whitespace languages but i can deal with it, tbh |
23:03:16 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "tooling issue, take it": imo it's a language design issue, because this is literally a known problem and has existed for years |
23:03:23 | FromDiscord | <Robyn [She/Her]> In reply to @fabric.input_output "? typeof(int)?": it'd return typedesc[int] so it's a shortcut still :p |
23:03:41 | FromDiscord | <fabric.input_output> In reply to @battery.acid.bubblegum "it'd return typedesc[int] so": 🤯 |
23:03:54 | FromDiscord | <fabric.input_output> better to use the typedesc still imo |
23:04:06 | FromDiscord | <fabric.input_output> In reply to @glisteringlime "imo it's a language": it's your editor's issue |
23:04:08 | FromDiscord | <glisteringlime> also i think the LSP isn't even working correctly |
23:04:27 | FromDiscord | <fabric.input_output> yeah nim tooling kinda lacks but what you gonna do tbh |
23:04:32 | FromDiscord | <glisteringlime> https://media.discordapp.net/attachments/371759389889003532/1341908305303568484/image.png?ex=67b7b4ff&is=67b6637f&hm=7deffbea836990e84fa6b26cd7802c6ca043bcd63a44e3f67c524aea3bb7cb90& |
23:04:36 | FromDiscord | <Robyn [She/Her]> In reply to @fabric.input_output "better to use the": yeah i agree |
23:05:47 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "it's your editor's issue": well, that would mean 99% of editors handle whitespace-sensitive langs incorrectly or in weird ways, and they have zero convention on how to actually handle them |
23:06:30 | FromDiscord | <fabric.input_output> are 99% of editors in the room with us right now? |
23:07:01 | FromDiscord | <glisteringlime> in a perfect world, things would just work and then whitespace-sensitive langs would be great |
23:07:13 | FromDiscord | <glisteringlime> except we don't live in that world, and nothing ever works properly |
23:07:15 | FromDiscord | <fabric.input_output> any self respecting configurable editor can be (easily) tweaked to handle indent correctly |
23:07:26 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "any self respecting configurable": I can disable auto-indent |
23:07:41 | FromDiscord | <glisteringlime> to prevent it from imploding |
23:07:53 | FromDiscord | <fabric.input_output> make the editor temporarily disable auto indent when pasting |
23:07:53 | FromDiscord | <glisteringlime> but then it's pain to re-indent the code correctly |
23:08:19 | FromDiscord | <fabric.input_output> make a command that disables, pastes and enables |
23:08:44 | FromDiscord | <fabric.input_output> why are you pasting so much damn code anyways |
23:08:52 | FromDiscord | <fabric.input_output> maybe preprocess the source |
23:09:01 | FromDiscord | <glisteringlime> quite honestly I came into this thinking nim will work but the LSP is breaking on me so I might have to use something else ;-; |
23:09:28 | FromDiscord | <fabric.input_output> wouldn't hurt taking the lsp issues to #tooling and specifying your exact issue |
23:09:44 | FromDiscord | <glisteringlime> In reply to @fabric.input_output "wouldn't hurt taking the": to be quite honest, I have zero idea of what the actual issue is |
23:09:54 | FromDiscord | <glisteringlime> all i can say is that it's incredibly, incredibly broken |
23:09:59 | FromDiscord | <fabric.input_output> just describe what is happening |
23:09:59 | FromDiscord | <glisteringlime> i don't even know how broken |
23:10:06 | FromDiscord | <fabric.input_output> maybe you're using the wrong one or some old version |
23:10:29 | FromDiscord | <glisteringlime> i'm pretty sure i'm using pretty much the newest version |
23:10:35 | FromDiscord | <glisteringlime> as this is a relatively recent install of nim |
23:10:47 | FromDiscord | <fabric.input_output> how did you install it? |
23:12:01 | FromDiscord | <glisteringlime> via choosenim |
23:14:46 | FromDiscord | <fabric.input_output> again, doesn't hurt taking it up to #tooling and trying to give as much information about your issue. maybe try the lsp with another editor to see if it makes a difference or yields more information |
23:15:29 | FromDiscord | <glisteringlime> honestly the only thing that actually works is nvim |
23:15:30 | FromDiscord | <glisteringlime> that's it |
23:15:44 | FromDiscord | <glisteringlime> every other editor I've tried does not function correctly with nim at all |
23:16:47 | FromDiscord | <glisteringlime> well, zed kind-of does, but again, there are indentation issues (just like there are with any whitespace-sensitive lang) |
23:47:10 | FromDiscord | <emanresu3> I'd rethrow the exception |