00:12:54 | * | xet7 quit (Quit: Leaving) |
00:54:54 | * | MrGoblins quit (Ping timeout: 244 seconds) |
04:16:07 | * | amadaluzia quit (Ping timeout: 276 seconds) |
05:21:03 | FromDiscord | <ebubethesage> sent a long message, see https://pasty.ee/eZQjTFPV |
05:50:16 | FromDiscord | <graveflo> In reply to @ebubethesage "Hi, I'm new here.": it's not wrong per se. A better place might be somewhere near %USERDATA% or something on windows |
06:09:38 | * | ntat joined #nim |
06:33:38 | FromDiscord | <Laylie> as long as the bin directory is on your path, it will work. the rest is up to how you prefer to organize your files |
06:37:50 | FromDiscord | <pmunch> In reply to @fabric.input_output "<@392962235737047041> is there a": No, but not really for the reason given by .sOkam! Futhark is able to distinguish between macros and function style macros, but neither has type information so they're hard to wrap. |
06:53:32 | * | alexdaguy joined #nim |
07:08:25 | FromDiscord | <ebubethesage> Thank you! |
08:13:25 | * | derpydoo joined #nim |
08:27:52 | * | alexdaguy quit (Ping timeout: 252 seconds) |
08:39:29 | * | coldfeet joined #nim |
08:48:52 | FromDiscord | <fabric.input_output> In reply to @pmunch "No, but not really": any way you could have a sort of construct inside `importc` to which you pass a function that you pass the name to and it gives you the signature? |
08:49:53 | FromDiscord | <pmunch> In reply to @fabric.input_output "any way you could": To just import a single function? |
08:50:14 | FromDiscord | <fabric.input_output> for all function macros |
08:50:29 | FromDiscord | <pmunch> Ah, again function macros don't have proper signatures |
08:50:52 | FromDiscord | <pmunch> That's the problem with wrapping them |
08:51:47 | FromDiscord | <fabric.input_output> yeah I mean have a thing like `renameCallback` in `importc` |
08:52:19 | FromDiscord | <fabric.input_output> and the callback determines if the thing should be declared and what signature it should have |
08:56:28 | FromDiscord | <kiloneie> We need a stickied post on the forum for all the new users on installing nim and it's "tooling" -> use the official vs code extension; if problems -> ask discord and or use saem's one in the mean time. When asking, state your OS, otherwise someone like Araq might tell you to put things into a "home" folder on Windows... |
08:56:40 | FromDiscord | <pmunch> Aha, like a function style macro callback |
08:56:52 | FromDiscord | <pmunch> Yeah that could make sense |
09:04:45 | * | alexdaguy joined #nim |
09:14:43 | FromDiscord | <ebubethesage> how do i get nim to open as a start meu program? |
09:14:52 | FromDiscord | <ebubethesage> i accidentally clicked no durign the install |
09:15:02 | FromDiscord | <ebubethesage> can someone help? |
09:15:18 | FromDiscord | <heysokam> meu? |
09:15:26 | FromDiscord | <ebubethesage> menu\ |
09:16:11 | FromDiscord | <heysokam> you cannot start nim like that. its a command line application |
09:17:05 | FromDiscord | <heysokam> you'd open a powershell or cmd terminal and call `nim c -r yourfile.nim` |
09:18:57 | FromDiscord | <ebubethesage> really? but i had it in a previous installation. i could call the cli directly from the start menu |
09:19:19 | FromDiscord | <kiloneie> just run the install again |
09:19:24 | FromDiscord | <kiloneie> finish.exe |
09:19:52 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=lnZOaXJy |
09:20:38 | FromDiscord | <ebubethesage> sent a long message, see https://pasty.ee/GwqVTyiX |
09:21:08 | FromDiscord | <kiloneie> then i suggest uninstalling, removing anything of Nim and retrying with run as administrator(sometimes helps) |
09:21:15 | FromDiscord | <pmunch> What? What would that even do? |
09:21:57 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=PkmIpVmS |
09:22:28 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=TTAzbRRZ |
09:22:34 | FromDiscord | <heysokam> there is a folder with `start.bat`, you need to find that folder and create a windows link, and then add that link to your start menu |
09:22:37 | FromDiscord | <Laylie> you don't need this if you already nim and a mingw on your path |
09:22:42 | FromDiscord | <Laylie> ^ have |
09:23:27 | FromDiscord | <ebubethesage> break thsi down for me. i just started programming in general. where do i run this?↵(@heysokam) |
09:23:35 | FromDiscord | <kiloneie> https://youtu.be/5tVIsDYPClA if you need visuals |
09:23:46 | FromDiscord | <heysokam> In reply to @ebubethesage "break thsi down for": > there is a folder with start.bat, you need to find that folder and create a windows link, and then add that link to your start menu |
09:23:47 | FromDiscord | <kiloneie> i am not on Windows anymore |
09:25:42 | FromDiscord | <Laylie> the output you posted says nim and mingw are already on your path, so start.bat is redundant |
09:27:29 | FromDiscord | <fabric.input_output> sent a code paste, see https://play.nim-lang.org/#pasty=aZLUdGyL |
09:31:26 | FromDiscord | <Laylie> codegendecl maybe? |
09:32:08 | FromDiscord | <fabric.input_output> hm |
09:33:07 | FromDiscord | <fabric.input_output> I think that might be it |
09:33:57 | FromDiscord | <ebubethesage> i've found the start.bat file, it was in nim-2.2.2 \> tools |
09:34:15 | FromDiscord | <ebubethesage> but how does that relate to this |
09:34:46 | FromDiscord | <Laylie> if you really want to, you can make a copy of or shortcut to it in your start folder |
09:34:56 | FromDiscord | <Laylie> but you don't seem to need it because nim and mingw are already on your path |
09:34:57 | FromDiscord | <ebubethesage> ???↵(@heysokam) |
09:35:03 | FromDiscord | <ebubethesage> dw i'll just google it |
09:35:25 | FromDiscord | <pmunch> In reply to @Laylie "you don't need this": Right, so it's opening a shell with the right paths set. Interesting. Actually kinda nice if you don't want everything in a global path |
09:43:26 | FromDiscord | <heysokam> sent a long message, see https://pasty.ee/FascLCCn |
09:49:43 | FromDiscord | <ebubethesage> you know what, you're right, the tone was most uncalled for↵(@heysokam) |
09:49:59 | FromDiscord | <kiloneie> if we don't already have, we should have a full uninstaller that removes everything including path variables |
09:50:20 | FromDiscord | <kiloneie> so one can just redo the install step |
09:50:32 | FromDiscord | <kiloneie> often best to just redo |
09:51:18 | FromDiscord | <kiloneie> And again, watch my video/s. |
09:51:23 | FromDiscord | <ebubethesage> it's personal issues. i'm coming from an SQL background, i'm throguhly unfamiliar w programming concepts and tryign to get into nim has been nothign but frustrations, i'm also very, very tired. not slept in like 30 soomethign hours↵(@heysokam) |
09:51:40 | * | derpydoo quit (Quit: derpydoo) |
09:52:30 | FromDiscord | <kiloneie> I recommend to remove nim and it's path variables (windows has a GUI for that, and i believe i wrote down the exact steps into my #1 video) |
09:53:19 | FromDiscord | <kiloneie> reinstall, use the official extension of VSCode or the previous one from sam(smthing) if the nimlangserver causes problems |
09:53:19 | FromDiscord | <Laylie> isn't nim already installed? does running `nim --version` in cmd or powershell not work? |
09:53:41 | FromDiscord | <kiloneie> echo "something", enable autosave in vsCode, F6 run it, go to bed |
09:53:57 | * | MrGoblins joined #nim |
09:54:13 | FromDiscord | <kiloneie> 30 hours of awake = drunk, you are incapable of chain of thought |
09:54:15 | FromDiscord | <ebubethesage> okay thank you. i watched your video btw, and it explains how to install, I didn't really see how to remove↵(@kiloneie) |
09:55:36 | FromDiscord | <kiloneie> https://media.discordapp.net/attachments/371759389889003532/1360553932333645974/image.png?ex=67fb8a17&is=67fa3897&hm=381b06f7bbaf59a74dcffb4571c120d0ca2c33f8c79d744ecbd4fdbb64c2a2c5& |
09:55:43 | FromDiscord | <kiloneie> i should put this in the description |
09:55:59 | FromDiscord | <heysokam> @ebubethesage all good, I understand↵to be honest, its best if you completely ignore this link step and just learn to open the terminal directly↵You'll need it sooner than later for programming |
09:56:39 | FromDiscord | <heysokam> with a command line open, you can type `nim --version` and I'm 100% certain, from what you just said, that it will print the version |
10:08:25 | * | alexdaguy quit (Ping timeout: 276 seconds) |
10:10:04 | FromDiscord | <ebubethesage> bro really called me drunk 😂😂↵(@kiloneie) |
10:10:05 | * | alexdaguy joined #nim |
10:14:20 | FromDiscord | <kiloneie> In reply to @ebubethesage "bro really called me": i've been up 30 hours once, i went from totally capable of thinking at hour 28, to cannot fathom what cards i have in hand, or what im actually doing half the time at hour 29 |
10:18:02 | FromDiscord | <Laylie> there's a reason god designed us to be awake 16 hours at a time |
10:20:48 | FromDiscord | <fabric.input_output> I think he screwed up |
10:21:50 | * | om3ga quit (Ping timeout: 252 seconds) |
10:21:52 | * | om3ga joined #nim |
10:23:44 | * | computerquip quit (Ping timeout: 252 seconds) |
10:24:10 | * | computerquip joined #nim |
11:07:53 | FromDiscord | <madonuko> he wrote the code but didn't maintain the code ↵code breaks as time goes on |
11:12:50 | * | alexdaguy quit (Ping timeout: 244 seconds) |
11:13:24 | FromDiscord | <entropydev> @arnetheduck Sorry to bother you, but I am trying out nlvm for the first time, and I would like to try using the debugger, but it seems unable to compile anything if the --debugger:native argument is passed. Is there something I could be doing wrong? I'm just testing it with a simple fibonacci function |
11:14:01 | FromDiscord | <entropydev> sent a code paste, see https://play.nim-lang.org/#pasty=lcRyXTlT |
11:14:11 | FromDiscord | <entropydev> (edit) "https://play.nim-lang.org/#pasty=okrLAsYY" => "https://play.nim-lang.org/#pasty=YXFfidrq" |
11:14:46 | FromDiscord | <entropydev> sent a code paste, see https://play.nim-lang.org/#pasty=cURhphlf |
11:16:02 | FromDiscord | <entropydev> I compiled nlvm from source without the ``STATIC_LLVM=1`` argument |
11:16:53 | FromDiscord | <fabric.input_output> so `OrderedTable` doesn't have some sort of `first` thingy |
11:17:06 | FromDiscord | <fabric.input_output> or `last` |
11:17:22 | FromDiscord | <heysokam> `thing[0]` doesn't work? |
11:17:34 | FromDiscord | <heysokam> it sure does for ordered sets |
11:17:42 | FromDiscord | <fabric.input_output> that queries a value with a key |
11:17:50 | FromDiscord | <fabric.input_output> and the map has keys |
11:17:57 | FromDiscord | <heysokam> ah true |
11:18:01 | FromDiscord | <heysokam> hmmm |
11:18:43 | FromDiscord | <fabric.input_output> maybe I could sort it in reverse order descending order and then do a for pairs and break in the first iteration |
11:18:51 | FromDiscord | <fabric.input_output> (edit) removed "reverse order" |
11:18:58 | FromDiscord | <fabric.input_output> hacky |
11:19:57 | FromDiscord | <heysokam> `thing.keys[0]` probably |
11:20:25 | FromDiscord | <fabric.input_output> `keys` is an iterator tho? |
11:20:40 | FromDiscord | <heysokam> oh, fml, im blind |
11:21:35 | FromDiscord | <heysokam> does this work? I know its noisy, but its what I found so far↵`thing[ thing.keys.toSeq()[0] ]` |
11:21:38 | FromDiscord | <fabric.input_output> oh I don't need to reverse it |
11:21:46 | FromDiscord | <fabric.input_output> I could make a custom key and define cmp for it |
11:22:49 | FromDiscord | <heysokam> yea, based on the docs for std/tables, that seems to be the way to do it |
11:23:07 | FromDiscord | <heysokam> that's weird that it has no way to access last/first 🤔 |
12:07:52 | * | alexdaguy joined #nim |
13:01:50 | * | alexdaguy quit (Quit: restart) |
13:13:20 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=zCZseeOX |
13:14:38 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=CUPNrEny |
13:18:16 | * | PMunch quit (Quit: leaving) |
13:19:17 | * | MrGoblins quit (Remote host closed the connection) |
13:19:38 | * | MrGoblins joined #nim |
13:22:36 | FromDiscord | <dex_191> hey guys, anyone got a nice logo pic with the name Nim i wanna put it on my report, thx |
13:28:51 | FromDiscord | <heysokam> In reply to @dex_191 "hey guys, anyone got": Somebody posted this some time ago here. I can't find the message. But the design was amazing, imo https://media.discordapp.net/attachments/371759389889003532/1360607600424648774/nim-cutegraffiti.png?ex=67fbbc12&is=67fa6a92&hm=c4f3c4e70de7021f413b781b1cd5c4a44883503e334b9449229b9c71f0df796f& |
13:29:25 | FromDiscord | <heysokam> Sorry to whoever posted for not @ attributing, but I can't find the message 😦 |
13:31:16 | FromDiscord | <fabric.input_output> daym |
13:34:46 | FromDiscord | <lainlaylie> first seen here? https://discord.com/channels/371759389889003530/371759389889003532/1236636464562044958 |
13:38:18 | FromDiscord | <Laylie> `2^max - 1` is supposed to be the maximum possible length of the binary representation?↵(@heysokam) |
13:38:19 | FromDiscord | <heysokam> In reply to @lainlaylie "first seen here? https://discord.com/channels/37175": legendary. probably yea |
13:38:58 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=JECnuXdE |
13:39:43 | FromDiscord | <heysokam> I don't know why I have to do that `+1` at the end, but this seems to get the right `4` when inputting `10` |
13:40:16 | FromDiscord | <Laylie> bitops.fastLog2 might help |
13:42:50 | FromDiscord | <heysokam> It also seems to be failing on negative values |
13:43:02 | FromDiscord | <Laylie> bitops.fastLog2 is? |
13:43:16 | FromDiscord | <heysokam> havent tried that yet, im on it |
13:43:24 | FromDiscord | <heysokam> current code I posted does |
13:44:50 | FromDiscord | <Laylie> your requiredBits doesn't look right to me |
13:45:13 | FromDiscord | <heysokam> yea, that's why I asked. I have no clue how to compute it |
13:48:07 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=qSaAuUqJ |
13:48:17 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=RFrJTJmg |
13:51:25 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=cZCVuukX |
13:53:09 | FromDiscord | <heysokam> now the failing one is the `octal` version 😭 |
13:53:13 | * | coldfeet quit (Quit: Lost terminal) |
13:54:11 | FromDiscord | <heysokam> how do I get that value to change from length of the binary string formatting (without `0b`)↵to the length for `0o` 🤔 |
13:54:41 | FromDiscord | <fabric.input_output> divide by 3 |
13:54:59 | FromDiscord | <fabric.input_output> 3 bits per octal digit |
13:55:09 | FromDiscord | <fabric.input_output> is this what you wanted? |
13:57:02 | FromDiscord | <heysokam> I thought it was 8 hmm |
13:57:22 | FromDiscord | <heysokam> dividing by 3 at least doesn't crash, so its better |
13:58:32 | FromDiscord | <heysokam> ok, it was `bits/3 + 1` |
13:58:56 | FromDiscord | <heysokam> ty @fabric.input_output, pointed me to the almost correct solution! tyty |
14:00:56 | FromDiscord | <fabric.input_output> you may need to align the number of bits by 3 first |
14:01:03 | FromDiscord | <fabric.input_output> better do a divmod |
14:01:15 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=VQmMDZRD |
14:01:30 | FromDiscord | <fabric.input_output> divmod and check the remainder |
14:02:07 | FromDiscord | <fabric.input_output> sent a code paste, see https://play.nim-lang.org/#pasty=evuBfgUM |
14:02:22 | FromDiscord | <fabric.input_output> (idk if it works lol) |
14:03:17 | FromDiscord | <fabric.input_output> (edit) "https://play.nim-lang.org/#pasty=UfqhIrmC" => "https://play.nim-lang.org/#pasty=DXNgmHbw" |
14:03:58 | FromDiscord | <Laylie> that seems to be correct |
14:10:10 | FromDiscord | <fabric.input_output> sent a code paste, see https://play.nim-lang.org/#pasty=bVnumASD |
14:10:22 | FromDiscord | <fabric.input_output> seems like nim can't find the `==` I declare |
14:13:17 | FromDiscord | <fabric.input_output> this is inside a function btw |
14:25:47 | FromDiscord | <Laylie> does this function happen to be generic and in a different module from Score and its `==`? |
14:26:46 | FromDiscord | <Laylie> if so, bind `==` in the function seems to get around it |
14:31:27 | FromDiscord | <fabric.input_output> no I mean all the code there is in the body of a function |
14:32:46 | FromDiscord | <heysokam> @fabric.input_output if you want to keep your sanity, `deviceList[0]` and come back to scoring only after you have a working renderer |
14:33:03 | FromDiscord | <Laylie> oh... i have never tried doing stuff like that all inside a function |
14:33:04 | FromDiscord | <heysokam> its so irrelevant at the beginning |
14:33:45 | FromDiscord | <fabric.input_output> In reply to @heysokam "<@607600292086939696> if you want": the scoring is done I just had this issue with nim |
14:38:40 | * | MrGoblins quit (Remote host closed the connection) |
14:38:52 | * | MrGoblins joined #nim |
14:46:12 | * | xtr00 joined #nim |
14:53:39 | * | xet7 joined #nim |
14:53:51 | * | xet7 quit (Remote host closed the connection) |
14:54:10 | * | xet7 joined #nim |
15:34:17 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=wPcRoIHa |
15:35:00 | * | SchweinDeBurg quit (Read error: Connection reset by peer) |
15:37:42 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=lRYPDpPL |
15:38:41 | Amun-Ra | generic won't work here, how about passing object variants? |
15:40:52 | * | SchweinDeBurg joined #nim |
15:40:53 | FromDiscord | <heysokam> wdym? |
15:41:30 | Amun-Ra | writing generic-alike functions using object variants |
15:41:39 | Amun-Ra | object variant is a concrete type |
15:43:50 | Amun-Ra | https://play.nim-lang.org/#pasty=nmCsyqKQ |
15:46:36 | Amun-Ra | perhaps there's a better way |
15:48:37 | FromDiscord | <fabric.input_output> sent a code paste, see https://play.nim-lang.org/#pasty=YNbCLZfC |
15:48:38 | FromDiscord | <fabric.input_output> perhaps |
15:50:26 | FromDiscord | <heysokam> i'd rather keep the case. those feel overengineered |
15:50:49 | FromDiscord | <fabric.input_output> lol |
15:55:32 | * | amadaluzia joined #nim |
16:33:42 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=EfcKtYiL |
16:36:50 | FromDiscord | <lainlaylie> bridge dropping messages is really annoying... can we all get on matrix already? |
16:39:22 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=CLAIvQQZ |
16:39:47 | FromDiscord | <heysokam> its a major hack, but its so wrong for actual random numbers on the full range |
16:40:45 | FromDiscord | <heysokam> In reply to @Laylie "what does your usage": oh I didn't know that syntax was valid. yea that'd fix it I think |
16:41:59 | FromDiscord | <Laylie> yeah i was kind of surprised that it let me use `[T]` on an implicit generic... |
16:43:59 | * | beholders_eye joined #nim |
16:50:57 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=vYqoWYyi |
16:53:21 | FromDiscord | <heysokam> oh, something else is killing the sign before entering the function. that actually works |
17:18:40 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=SxLUjJuH |
17:29:31 | FromDiscord | <Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=DaPSichA |
17:31:07 | FromDiscord | <heysokam> In reply to @battery.acid.bubblegum "why not do `max:": wouldn't that make it so that I have to cast to use? |
17:31:49 | FromDiscord | <Elegantbeef> I think integers do widen where possible |
17:32:48 | FromDiscord | <Elegantbeef> PS\: I see you have `min: SomeInteger; max: SomeInteger` but in a trench coat you can do `min, max: distinct SomeInteger` and not have todo the entire typeclassing again |
17:33:45 | FromDiscord | <Robyn [She/Her]> In reply to @heysokam "wouldn't that make it": `distinct Type` in params just makes it so it won't be bound to what `SomeInteger` was first bound to |
17:33:46 | FromDiscord | <heysokam> when I merged them with `min,max`, the first was forcing the second |
17:34:07 | FromDiscord | <Robyn [She/Her]> Nim's type system is weird |
17:34:09 | FromDiscord | <Elegantbeef> Yes cause name typeclasses bind first use, it's an anti feature |
17:34:10 | FromDiscord | <heysokam> I guess `min,max :distinct` would do the trick |
17:34:17 | FromDiscord | <heysokam> yea agreed |
17:34:40 | FromDiscord | <Elegantbeef> There are a few places it makes sense but the vast majority of the time you want to resolve to a new name |
17:35:48 | FromDiscord | <heysokam> ty beef+robin, that's way cleaner |
17:40:56 | FromDiscord | <heysokam> or should I say..... Beefman & Robin 🦇 |
17:41:17 | FromDiscord | <heysokam> _(sorry, I had to make that wordplay joke, hahaha)_ |
17:42:18 | FromDiscord | <Elegantbeef> What are we shitty batman ripoffs? |
17:42:23 | FromDiscord | <Elegantbeef> I regret helping you |
17:42:51 | FromDiscord | <fabric.input_output> the steak knight |
17:43:10 | FromDiscord | <Robyn [She/Her]> In reply to @heysokam "or should I say.....": lolol |
17:43:23 | FromDiscord | <Robyn [She/Her]> In reply to @fabric.input_output "the steak knight": and the lass wonder |
17:43:50 | FromDiscord | <fabric.input_output> 🥩 🟩 |
17:54:17 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=DmfSJBFq |
17:54:45 | FromDiscord | <fabric.input_output> you could log from within the function? |
17:56:12 | FromDiscord | <heysokam> but it spams for other valid cases, thousands of times |
17:56:28 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=YPHKwOyE |
17:56:32 | FromDiscord | <fabric.input_output> well the last one printed will be the one that caused the defect |
17:56:44 | FromDiscord | <fabric.input_output> innit |
17:56:48 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=UfhUcyjT |
17:57:34 | FromDiscord | <heysokam> In reply to @fabric.input_output "well the last one": no because its inside a unit test, so it doesn't bail on first error |
17:57:39 | FromDiscord | <fabric.input_output> ah |
17:58:03 | FromDiscord | <fabric.input_output> print some special string alongside it that you can search for in the output? :P |
17:58:23 | FromDiscord | <heysokam> its fine, that try/except catched the concrete defect |
17:58:33 | FromDiscord | <fabric.input_output> 👍 |
17:59:14 | FromDiscord | <Elegantbeef> I think rand has issues with full range generation |
17:59:14 | FromDiscord | <Elegantbeef> try excepting defects |
17:59:15 | FromDiscord | <Elegantbeef> I know for my type fuzzer I had issues with rand |
17:59:15 | FromDiscord | <Elegantbeef> Wait until you use `--panics:on` |
17:59:15 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=QaotFEcU |
18:00:02 | FromDiscord | <Elegantbeef> Though I think Nim devel made it so you can except defects with panics on if you explicitly do it |
18:01:38 | FromDiscord | <heysokam> I don't get that solution, beef. what's the difference? |
18:01:56 | FromDiscord | <Elegantbeef> You don't need to repeat `distinct T` everywhere and just a single name |
18:02:16 | FromDiscord | <heysokam> ah, true. could alias it for less repetitiveness, true |
18:02:54 | FromDiscord | <heysokam> oh wait, giving a distinct to an arg converts it to that thing? thats unintuitive af |
18:03:20 | FromDiscord | <Elegantbeef> What? |
18:04:51 | Amun-Ra | you're way too specific |
18:07:08 | FromDiscord | <Elegantbeef> I know, but what? |
18:08:05 | Amun-Ra | I mean heysokam |
18:08:15 | FromDiscord | <heysokam> I just find it confusing that saying `distinct SomeGenericT` outside of a function argument makes it so that the argument type does not bind to the first type found |
18:11:05 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=JPxJkqVb |
18:11:17 | FromDiscord | <heysokam> (edit) "https://play.nim-lang.org/#pasty=zZRjhDco" => "https://play.nim-lang.org/#pasty=qmQcdeCl" |
18:11:45 | FromDiscord | <Elegantbeef> I don't think it's that confounding, a type alias should be the same as writing the type where you used it |
18:11:46 | FromDiscord | <Elegantbeef> It makes perfect sense `distinct TypeClass` is not a concrete type and is a typeclass itself |
18:12:18 | FromDiscord | <heysokam> ok, reword `Not make sense` to `confusing` |
18:12:26 | FromDiscord | <heysokam> that's what I was trying to say |
18:12:30 | FromDiscord | <Elegantbeef> Those mean the same thing |
18:12:57 | FromDiscord | <heysokam> something can make sense and be confusing to grasp |
18:14:03 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=InMynPeR |
18:14:58 | FromDiscord | <Elegantbeef> Like I said I think it's an issue with full range generation |
18:15:05 | FromDiscord | <heysokam> I'm having trouble branching the distincts into a sensible situation, basically |
18:27:39 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=WqnslvzL |
18:28:53 | FromDiscord | <Elegantbeef> I found it was just 1 |
18:29:04 | FromDiscord | <Elegantbeef> If you're still getting a range issue then idk what to say |
18:29:56 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=cXZIKKIc |
18:30:32 | FromDiscord | <heysokam> It has to be the branching logic, or the max/min ranges that are wrong somehow |
18:32:01 | FromDiscord | <Elegantbeef> You're not converting `min` or `max` to the same type |
18:32:11 | FromDiscord | <Elegantbeef> `rand.rand(system.max(min, min.low+safety)..max)` |
18:34:17 | FromDiscord | <heysokam> where? they are the same type on that top branch |
18:34:45 | FromDiscord | <Elegantbeef> No they're both signed |
18:34:58 | FromDiscord | <heysokam> exactly? |
18:35:07 | FromDiscord | <heysokam> not sure what you mean then |
18:35:11 | FromDiscord | <Elegantbeef> `i8` and `i32` are not the same type |
18:38:07 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=LvaVIxMV |
18:38:56 | FromDiscord | <Elegantbeef> I'd also avoid the `SomeInteger` return value and replace it with `auto` |
18:38:57 | FromDiscord | <Elegantbeef> Well remove your exception catching and show which line is erroring |
18:40:10 | Amun-Ra | and shadowing min and max |
18:40:36 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=SgpjiOdu |
18:42:43 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=VLwdrbfS |
18:42:57 | FromDiscord | <Elegantbeef> Of course not those aren't callable |
18:43:04 | FromDiscord | <heysokam> I'm aware |
18:43:29 | FromDiscord | <Elegantbeef> So you say that and tell amun to shush |
18:44:03 | FromDiscord | <Elegantbeef> That's not what I meant when I said swap `SomeInteger` to auto, but heh |
18:44:30 | FromDiscord | <heysokam> oh you meant just the return? |
18:44:40 | FromDiscord | <Elegantbeef> That is what return value means |
18:44:56 | FromDiscord | <Elegantbeef> It won't change the behaviour just reduces the chance of the compiler binding a type based off parameters |
18:45:25 | FromDiscord | <Elegantbeef> What are your input types here? |
18:46:07 | FromDiscord | <Elegantbeef> Cause `min.low + safety` is typed to `typeof(min)` |
18:47:02 | FromDiscord | <Elegantbeef> Wait It's not due to upcasting |
18:47:09 | FromDiscord | <Elegantbeef> Upcasting is a mistake |
18:47:15 | FromDiscord | <Elegantbeef> Types shouldn't widen |
18:47:50 | FromDiscord | <Elegantbeef> Wait you do `rand.Rand()` instead of `rand.initRand()` |
18:48:40 | FromDiscord | <Elegantbeef> Hmph that seems to work |
18:48:45 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=LZbHhREL |
18:48:48 | FromDiscord | <Elegantbeef> Thought maybe 0 init'd wouldn't work |
18:49:07 | FromDiscord | <heysokam> with `var R = rand.initRand()` it still fails |
18:49:19 | FromDiscord | <Elegantbeef> That's `int.low` and `uint.high` |
18:49:50 | FromDiscord | <Elegantbeef> The first that is |
18:51:00 | FromDiscord | <heysokam> `let val = integer(int.low+1, uint.high-1)` first is probably from here |
18:51:49 | FromDiscord | <heysokam> second is: `let big = suffixed(uint.high, uint.high)` |
18:52:20 | FromDiscord | <heysokam> but this works fine: `let small = suffixed(int.low, int.low)` 🧩 |
18:52:49 | FromDiscord | <Elegantbeef> There is no rand func that takes `Hslice[X, Y]` so that should be fine I guess |
18:53:27 | FromDiscord | <heysokam> that's why I had to do the crazy branching |
18:53:47 | FromDiscord | <heysokam> on the `rnd` function, because rand does not allow int+uint or uint+int |
18:53:51 | FromDiscord | <Elegantbeef> Instead of just making procs that do it 😄 |
18:54:14 | FromDiscord | <heysokam> ah good point, I forgot about overloading |
18:54:23 | FromDiscord | <Elegantbeef> Yea I don't see what's going on I cannot reproduce the issues |
18:55:41 | FromDiscord | <heysokam> 😦 |
18:56:41 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=VwJXEWDD |
18:58:03 | FromDiscord | <Elegantbeef> I'd say check the types with a `static: echo typeof(min), " ", typeof(max), " ", typeof(rand.rand(R, ...))` |
19:01:50 | * | MrGoblins quit (Ping timeout: 252 seconds) |
19:06:15 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=rEwnJoDR |
19:06:59 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=BquSbrJG |
19:07:36 | FromDiscord | <heysokam> somehow its not clamping at all |
19:07:53 | FromDiscord | <heysokam> and safety is at `const safety = 1_000_000_000`, so it totally should |
19:07:54 | FromDiscord | <Elegantbeef> `MAX.int` |
19:08:14 | FromDiscord | <heysokam> where? there are 4 blocks |
19:08:21 | FromDiscord | <heysokam> and some cannot be casted to int |
19:08:28 | FromDiscord | <Elegantbeef> Singed, unsigned of course |
19:08:31 | FromDiscord | <heysokam> otherwise they are not really `uint.max` |
19:08:36 | FromDiscord | <Elegantbeef> I don't know how much you've changed so far |
19:08:52 | FromDiscord | <heysokam> a ton, but exact same outcome. let me repaste |
19:09:05 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=lxmsscoQ |
19:09:58 | FromDiscord | <Elegantbeef> In your signed/unsigned variant you do `Max.int` which will never be valid |
19:10:03 | FromDiscord | <Elegantbeef> Well not never |
19:10:12 | FromDiscord | <Elegantbeef> But in the case `Max` \> int.high |
19:14:12 | FromDiscord | <heysokam> i'm so confused, this makes no sense. the limiting is doing nothing |
19:14:27 | FromDiscord | <Elegantbeef> Push it to the limit |
19:14:52 | FromDiscord | <heysokam> wdym? |
19:15:37 | FromDiscord | <Elegantbeef> It's a song |
19:15:56 | FromDiscord | <heysokam> oh! don't remember by that, my bad |
19:17:46 | FromDiscord | <Elegantbeef> Where's the limiting? |
19:20:10 | FromDiscord | <heysokam> `+safety`, `-safety`, and `system.min`/`system.max` |
19:20:17 | * | xet7 quit (Remote host closed the connection) |
19:20:43 | FromDiscord | <Elegantbeef> How does that matter if you're doing `Max.int` when `Max > int.high` |
19:21:42 | * | xet7 joined #nim |
19:22:36 | FromDiscord | <Elegantbeef> What even is the desired output when `min` is `int.low` and `max` is `uint.high` |
19:22:42 | FromDiscord | <Elegantbeef> What type is the output even supposed to be |
19:26:54 | FromDiscord | <heysokam> I see your point. it also fails on `uint.high..uint.high` |
19:27:25 | FromDiscord | <heysokam> so I'm not sure if it has anything to do with int.high 😦 |
19:28:00 | FromDiscord | <heysokam> to answer the question, the first one that fits, otherwise just makes it `'i` or `'u` |
19:28:24 | FromDiscord | <heysokam> the first one in an ordered list I hardcoded, I mean |
19:29:33 | FromDiscord | <Elegantbeef> But how could it based off the above logic |
19:29:44 | FromDiscord | <heysokam> wdym |
19:30:14 | FromDiscord | <Elegantbeef> `rand(...)` returns a single value determined at compile time |
19:30:47 | FromDiscord | <Elegantbeef> value type\ |
19:31:28 | FromDiscord | <heysokam> the value is turned into a string, not used in nim code |
19:32:12 | FromDiscord | <heysokam> the output is a file with code, so it ends up being `var thing = 012301414'i64` or whaterver else |
19:32:27 | FromDiscord | <Elegantbeef> Right but this is still running in Nim |
19:32:43 | FromDiscord | <Elegantbeef> So what is the return type of `rnd(int.low, uint.high)` |
19:32:48 | FromDiscord | <heysokam> yes, but the value is chosen from the table |
19:33:33 | FromDiscord | <heysokam> In reply to @Elegantbeef "So what is the": there isn't such, uint.high is prioritized to the `int.low` and lowered to `int.high` in that branch |
19:34:18 | FromDiscord | <heysokam> but only when `Min` is `int`, not when it is `uint` |
19:35:54 | FromDiscord | <heysokam> I was assuming `uint.high.int` would turn into `int.high`, basically. is that not the case? |
19:36:04 | FromDiscord | <Elegantbeef> Though that's not happening right now |
19:36:04 | FromDiscord | <Elegantbeef> Got it |
19:36:05 | FromDiscord | <Elegantbeef> Heh nope |
19:36:07 | FromDiscord | <Elegantbeef> That's an error |
19:36:26 | FromDiscord | <Elegantbeef> `min(uint.high, int.high.uint).int` is what you want |
19:37:14 | FromDiscord | <heysokam> getting lost. where is that? in which branch? |
19:37:27 | FromDiscord | <Elegantbeef> Int conversions are checked, they're not clamping |
19:37:39 | FromDiscord | <Elegantbeef> Wherever you do `uint.high.int` equivlent |
19:38:08 | FromDiscord | <Elegantbeef> If you want to clamp the range of the unsigned side you need to take the min of the unsigned value or int.high |
19:38:37 | FromDiscord | <Elegantbeef> That'll clamp it to the signed integer range |
19:39:30 | FromDiscord | <heysokam> one of them is gone |
19:39:45 | FromDiscord | <heysokam> the `int.low, uint.high` one now passes |
19:40:18 | FromDiscord | <heysokam> the `uint.high,uint.high` one is still crashing, but already progress 🥳 |
19:41:15 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=hzGbzLgY |
19:41:42 | FromDiscord | <Elegantbeef> 8 years later and mild progress has been made |
19:41:54 | FromDiscord | <heysokam> totally! 😄 |
19:45:29 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=RmLRQJpa |
19:51:14 | FromDiscord | <heysokam> that's really confusing, ngl |
19:58:04 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=GPnXFqNk |
19:58:56 | FromDiscord | <heysokam> and the `int,int` case too |
19:59:32 | FromDiscord | <heysokam> I'm so confused, but that pretty much confirms that I was right and the logic for clamping was somehow wrong |
20:06:35 | FromDiscord | <heysokam> actually more confusing, removing that call entirely fixed too 🙈 |
20:09:47 | FromDiscord | <Elegantbeef> Uhh `: SomeInteger` and `SomeInteger` are bound to the same type no? 😄 |
20:09:48 | FromDiscord | <Elegantbeef> So that should do nothing |
20:10:27 | FromDiscord | <heysokam> exactly, yea |
20:10:48 | FromDiscord | <heysokam> that's how I noticed and removed it.... and worked 🪄 |
20:11:40 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=UfOGCQBP |
20:14:39 | FromDiscord | <ebubethesage> hi guys, it's the cranky guy from earlier again |
20:15:08 | FromDiscord | <ebubethesage> i came back to say i've gotten some much needed sleep. i approached the problem with fresh eyes and it wan't even really a problem lmao |
20:15:20 | FromDiscord | <ebubethesage> thanl you guys for helping me earlier |
20:26:06 | FromDiscord | <heysokam> no worries! glad you figured it out 💪 |
20:30:24 | * | MrGoblins joined #nim |
20:44:58 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=nEnnPywq |
20:45:36 | FromDiscord | <heysokam> `Error: undeclared field: ''i' for type system.string` |
20:45:50 | FromDiscord | <Elegantbeef> `'i64` |
20:46:29 | FromDiscord | <heysokam> yea, but I thought `'i` existed, much like `'u` 🤔 |
20:48:36 | FromDiscord | <heysokam> its in the `grammar.txt` file https://media.discordapp.net/attachments/371759389889003532/1360718264958849074/image.png?ex=67fc2323&is=67fad1a3&hm=201375307972acac13aceb590f0c4ed60e021b19868ee941796ebc552cf56b20& |
20:48:52 | FromDiscord | <heysokam> ohhh wait its not! |
20:49:18 | FromDiscord | <heysokam> `'i` does not have a non-sized version. that explains it |
20:58:59 | * | ntat quit (Quit: leaving) |
21:04:07 | FromDiscord | <fabric.input_output> sent a code paste, see https://play.nim-lang.org/#pasty=Dpunexzz |
21:04:27 | FromDiscord | <fabric.input_output> and I'm getting this error https://media.discordapp.net/attachments/371759389889003532/1360722253095899326/image.png?ex=67fc26da&is=67fad55a&hm=14e0ed43714f6d4941e39297c00b856ff0fa30cacad048de235a7bfa9619cbda& |
21:05:01 | FromDiscord | <fabric.input_output> I wasn't getting them before when i just did the `importc` |
21:05:46 | FromDiscord | <fabric.input_output> the functions are being generated with the mangled type identifiers |
21:09:28 | FromDiscord | <fabric.input_output> same thing even without the defines btw |
21:13:08 | FromDiscord | <heysokam> In reply to @fabric.input_output "<@392962235737047041> I tried this": I think he meant `useFutharkForVulkan` 🙂 |
21:13:51 | FromDiscord | <fabric.input_output> ? |
21:14:13 | FromDiscord | <heysokam> `defined(useFutharkForExample)` -> `defined(useFutharkForVulkan)` |
21:14:21 | FromDiscord | <Elegantbeef> `ptr VkImage` is not `ptr VkImageView` is it? |
21:14:23 | FromDiscord | <fabric.input_output> I just copy pasted it |
21:14:34 | FromDiscord | <fabric.input_output> uhh |
21:14:57 | FromDiscord | <heysokam> yea, you are passing an imageview to an image somehow |
21:15:08 | FromDiscord | <heysokam> sorry, the other way around |
21:16:04 | FromDiscord | <fabric.input_output> oops yeah my bad |
21:16:06 | FromDiscord | <fabric.input_output> 😅 |
21:16:17 | FromDiscord | <fabric.input_output> I got distracted by the mangled identifiers |
21:16:19 | FromDiscord | <heysokam> it happens, haha |
21:17:00 | FromDiscord | <heysokam> In reply to @fabric.input_output "I just copy pasted": I figured, but just in case you left it by accident. typos are easy to miss, so figured I should note it |
21:17:07 | FromDiscord | <fabric.input_output> oh hey I got my colors back https://media.discordapp.net/attachments/371759389889003532/1360725442625015828/image.png?ex=67fc29d2&is=67fad852&hm=e0816976516204c033a937d219fb21add03904f301a30ee3fe4e2b20b678b358& |
21:17:38 | FromDiscord | <heysokam> In reply to @fabric.input_output "oh hey I got": pretty clean |
21:18:39 | FromDiscord | <fabric.input_output> that's because I've been following the tutorial. otherwise I suspect it would've been a messy lump of code |
21:18:43 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=LXUtEnPj |
21:19:11 | FromDiscord | <heysokam> not crucial for the smaller ones, but for some of the more gnarly functions it gets reaaaally useful |
21:19:32 | FromDiscord | <fabric.input_output> yep |
21:19:34 | FromDiscord | <leorize> tree-sitter-nim would make sure that you always have some colors \:p↵(@fabric.input_output) |
21:19:47 | FromDiscord | <fabric.input_output> I like nim.nvim more |
21:19:51 | FromDiscord | <heysokam> same |
21:20:01 | FromDiscord | <heysokam> treesitter is so heavy for nim 😦 |
21:20:12 | FromDiscord | <fabric.input_output> cuz I know I broke something when the colors go out + I think it's prettier this way |
21:20:24 | FromDiscord | <leorize> they should be stackable |
21:20:29 | FromDiscord | <leorize> at least I think I made it so |
21:21:07 | FromDiscord | <heysokam> @fabric.input_output also, check out https://github.com/heysokam/nim.vim↵I cleaned up the colors a lot, in case you like them better |
21:21:30 | FromDiscord | <heysokam> the default doesn't highlight some things differently, when it should |
21:21:32 | FromDiscord | <leorize> latest neovim 0.11 should handle tree-sitter a lot better now with non-blocking parsing |
21:23:30 | FromDiscord | <fabric.input_output> In reply to @heysokam "<@607600292086939696> also, check out": trying it out rn. long time since I've updated my plugins, hope nothing breaks |
21:24:39 | FromDiscord | <fabric.input_output> noooo 😭 https://media.discordapp.net/attachments/371759389889003532/1360727341231247431/image.png?ex=67fc2b97&is=67fada17&hm=aed6e1bf81f20d809384deb1f651bc5e4bd43bd291ea58bc2817477daac50fa6& |
21:24:55 | FromDiscord | <leorize> how old is your neovim? |
21:25:05 | FromDiscord | <Elegantbeef> Hey my vim does the same thing when I open it after updating astronvim |
21:25:33 | FromDiscord | <fabric.input_output> 0.9.4 |
21:25:45 | FromDiscord | <leorize> the latest is 0.11 |
21:25:48 | FromDiscord | <leorize> you're quite behind |
21:26:16 | FromDiscord | <fabric.input_output> that's what you get for installing it manually from gh releases because apt's version much older |
21:26:58 | FromDiscord | <leorize> I use homebrew to get stuff just because of this |
21:27:25 | FromDiscord | <fabric.input_output> I could get nix or guix |
21:27:26 | FromDiscord | <fabric.input_output> but I'm lazy |
21:27:36 | FromDiscord | <fabric.input_output> or maybe make my own thing |
21:27:39 | FromDiscord | <leorize> you can also get homebrew \:p |
21:27:52 | FromDiscord | <Elegantbeef> "I use arch btw" |
21:29:11 | FromDiscord | <heysokam> arch is for newbies. gentoo is better |
21:29:35 | FromDiscord | <heysokam> :offtopic: :sarcasm: |
21:30:17 | FromDiscord | <leorize> arch is not fashionable anymore |
21:30:28 | FromDiscord | <leorize> "I use nixos btw" is in style rn |
21:30:48 | FromDiscord | <Elegantbeef> But but but I don't want immutable and don't want to compile from source unless I have to |
21:31:50 | FromDiscord | <fabric.input_output> guix > nix |
21:32:08 | FromDiscord | <Elegantbeef> Gun -\> Head |
21:32:31 | FromDiscord | <fabric.input_output> guix uses scheme which is round, beautiful and based |
21:32:45 | FromDiscord | <fabric.input_output> nix uses some other thing that I don't know what is but looks ugly |
21:33:22 | FromDiscord | <Elegantbeef> s-expy |
21:33:31 | FromDiscord | <heysokam> > (is (scheme guix uses) round beautiful based) |
21:33:35 | FromDiscord | <heysokam> ftfy |
21:34:42 | FromDiscord | <Robyn [She/Her]> Nix' config language looks kinda ugly tbh |
21:35:23 | FromDiscord | <Elegantbeef> It's to match the users, hah gottem |
21:35:27 | FromDiscord | <fabric.input_output> TIL bash `<<<` |
21:35:38 | FromDiscord | <fabric.input_output> In reply to @Elegantbeef "It's to match the": trvthnvke |
21:40:53 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=UYYvunLa |
21:41:01 | FromDiscord | <fabric.input_output> uhh I broke it completely lol |
21:42:55 | FromDiscord | <Elegantbeef> You need to convert to the type that makes sense 😄 |
21:43:06 | FromDiscord | <heysokam> yea, but that's what I'm asking |
21:43:16 | FromDiscord | <heysokam> I can't wrap my head around how |
21:44:17 | FromDiscord | <heysokam> if `max is int`, I need to clamp it to int, but can't figure out how |
21:44:28 | FromDiscord | <heysokam> (edit) "it" => "maxVal" |
21:44:32 | FromDiscord | <fabric.input_output> I think I borked vim-plug |
21:44:42 | FromDiscord | <fabric.input_output> In reply to @heysokam "if `max is int`,": turn `max` to uint64 |
21:44:58 | FromDiscord | <heysokam> In reply to @fabric.input_output "turn `max` to uint64": I can't, it might be negative |
21:44:59 | FromDiscord | <leorize> your config sure is ancient...↵(@fabric.input_output) |
21:45:04 | FromDiscord | <Elegantbeef> `min(max, typeof(max)(int.high)).int` |
21:45:32 | FromDiscord | <fabric.input_output> In reply to @leorize "your config sure is": it has gone through 2 devices and 3 operating systems in the span of 5 years or so |
21:45:57 | FromDiscord | <heysokam> In reply to @Elegantbeef "`min(max, typeof(max)(int.high)).int`": this clamps max, right? I need to clamp `maxVal`, I believe? |
21:46:24 | FromDiscord | <Elegantbeef> That ensures max is in int range |
21:46:53 | FromDiscord | <heysokam> but max is in int range, its an int |
21:48:55 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=IjZlyFNE |
21:48:56 | FromDiscord | <leorize> sent a long message, see https://pasty.ee/smfEhoSj |
21:49:00 | FromDiscord | <heysokam> ty again beef |
21:49:43 | FromDiscord | <fabric.input_output> In reply to @leorize "if you want to": I've seen them but I haven't really had any reason to move to any of those. I just deleted `plug.vim` and don't know where to put it lol |
21:49:49 | FromDiscord | <heysokam> lazy.nvim is the best UX by far |
21:50:41 | FromDiscord | <leorize> mini and lazy have locking support |
21:50:59 | FromDiscord | <leorize> so you can generate a lock if update works, or rollback to the one you commit to git otherwise |
21:51:18 | FromDiscord | <fabric.input_output> yeah I should def rewrite my config someday |
21:51:34 | FromDiscord | <fabric.input_output> ok everything works again now yippie |
21:51:42 | FromDiscord | <heysokam> In reply to @leorize "mini and lazy have": their ux is not even comparable, though |
21:51:54 | FromDiscord | <leorize> they serve different audiences |
21:52:09 | FromDiscord | <heysokam> nothing beats this screen https://media.discordapp.net/attachments/371759389889003532/1360734261006569563/image.png?ex=67fc3209&is=67fae089&hm=8071575a1fcca16d79fce823822d2a1bcbe56f5a01e4a9c1e60c3ada840c277c& |
21:52:22 | FromDiscord | <fabric.input_output> whoa what why does my nim file look weird |
21:52:40 | FromDiscord | <fabric.input_output> https://media.discordapp.net/attachments/371759389889003532/1360734390623142029/image.png?ex=67fc3227&is=67fae0a7&hm=8bb09f359504126f82bf5a931179661d64af060132da1932d6896761976e39bd& |
21:52:44 | FromDiscord | <leorize> sokam's `nim.vim` is a fork of zah's |
21:52:55 | FromDiscord | <heysokam> yep |
21:53:00 | FromDiscord | <leorize> it doesn't have semantic highlighting |
21:53:09 | FromDiscord | <Elegantbeef> If the nim file looks weird that means it's working 😄 |
21:53:11 | FromDiscord | <fabric.input_output> but I liked that :( |
21:53:15 | FromDiscord | <heysokam> its not an LSP |
21:53:25 | FromDiscord | <fabric.input_output> I like nimsuggest highlight |
21:53:28 | FromDiscord | <leorize> use `nim.nvim` if you want that |
21:53:54 | FromDiscord | <leorize> load in TS nim too for fancy features \:p |
21:54:28 | FromDiscord | <heysokam> In reply to @fabric.input_output "": for reference. your theme doesn't do it justice, but yea its very theme dependent https://media.discordapp.net/attachments/371759389889003532/1360734841510826134/image.png?ex=67fc3293&is=67fae113&hm=c229a7a3ddc565206960b8b102060baecc1b4d55e698a7dc951e948f2d3e36c7& |
21:55:07 | FromDiscord | <heysokam> your previous setup looked clearer with your theme, I believe |
21:55:17 | FromDiscord | <leorize> image.png https://media.discordapp.net/attachments/371759389889003532/1360735048189350098/image.png?ex=67fc32c4&is=67fae144&hm=f84c92273acc7d538ead7d1d0299bdce276e60b352459fba408ba606484d9ebb& |
21:55:58 | FromDiscord | <leorize> here's my ts-nim only setup |
21:57:43 | FromDiscord | <fabric.input_output> In reply to @leorize "so you can generate": plug has snapshots |
21:58:23 | FromDiscord | <fabric.input_output> In reply to @leorize "image.png": I like mine more tbh |
21:58:24 | FromDiscord | <leorize> mini is very tiny if that floats your boat \:p |
21:59:31 | FromDiscord | <leorize> nim.nvim works better than I thought |
21:59:55 | FromDiscord | <leorize> haven't got new issues despite still having users \\o/ |
22:01:42 | FromDiscord | <fabric.input_output> lmao it's not highlighting `for` |
22:01:56 | FromDiscord | <fabric.input_output> or `if` |
22:02:00 | FromDiscord | <fabric.input_output> what is happening |
22:02:16 | FromDiscord | <Robyn [She/Her]> Does Nim allow anonymous type declarations? |
22:02:31 | FromDiscord | <Robyn [She/Her]> In function bodies |
22:02:43 | FromDiscord | <fabric.input_output> anonymous? |
22:02:51 | FromDiscord | <leorize> do you happen to have both nim.nvim and something else enabled? |
22:02:54 | FromDiscord | <Robyn [She/Her]> Or just typedefs in function bodies, not anonymous |
22:02:59 | FromDiscord | <leorize> you can |
22:03:10 | FromDiscord | <leorize> you can put them anywhere, really |
22:03:15 | FromDiscord | <Robyn [She/Her]> Gotcha |
22:03:34 | FromDiscord | <fabric.input_output> In reply to @battery.acid.bubblegum "Or just typedefs in": yeah it can but if you define functions for that type that are gonna be used by other functions through generics and whatnot they might not pick them up |
22:03:42 | FromDiscord | <Robyn [She/Her]> How does Cps handle that, leorize? :p |
22:03:48 | FromDiscord | <Robyn [She/Her]> Out of curiousity |
22:04:16 | FromDiscord | <fabric.input_output> In reply to @leorize "do you happen to": no, my config is exactly the same and I removed sokam's fork |
22:04:46 | FromDiscord | <Robyn [She/Her]> In reply to @fabric.input_output "yeah it can but": Makes sense, I'm just brainstorming some ideas rn, tryna figure out how to implement my own cps lib |
22:06:14 | FromDiscord | <leorize> it doesn't xd |
22:06:15 | FromDiscord | <leorize> 95% of time it should just work |
22:06:15 | FromDiscord | <leorize> if you write one you should target skull |
22:06:21 | FromDiscord | <leorize> \:p |
22:06:59 | FromDiscord | <Robyn [She/Her]> Fair |
22:07:09 | FromDiscord | <Robyn [She/Her]> In reply to @leorize "if you write one": Ehhh tbh, not sure |
22:07:36 | FromDiscord | <fabric.input_output> things that used to be highlighted aren't being highlighted anymore 😭 |
22:07:36 | FromDiscord | <Robyn [She/Her]> Nimony is certainly in the works so holding out for that |
22:07:51 | FromDiscord | <leorize> sure |
22:08:04 | FromDiscord | <leorize> maybe your colorscheme got updated?↵(@fabric.input_output) |
22:08:09 | FromDiscord | <leorize> are you on latest neovim? |
22:08:38 | FromDiscord | <fabric.input_output> yeah |
22:08:47 | FromDiscord | <fabric.input_output> ain't no way my colorscheme got outdated |
22:09:06 | FromDiscord | <leorize> this commit changed how nimsuggest highlighting is applied\: https://github.com/alaviss/nim.nvim/commit/076239e8869e3e9b061b17cbca2cea2df73d5f92 |
22:09:25 | FromDiscord | <leorize> which should work unless your colorscheme doesn't support treesitter (unlikely) |
22:10:03 | FromDiscord | <fabric.input_output> it def supports treesitter |
22:10:09 | FromDiscord | <fabric.input_output> it works with other treesitter things |
22:10:39 | FromDiscord | <fabric.input_output> the commit says |
22:10:42 | FromDiscord | <fabric.input_output> 0.9.0 |
22:10:52 | FromDiscord | <fabric.input_output> and I was on 0.9.4 |
22:10:59 | FromDiscord | <fabric.input_output> so I doubt this affects |
22:12:47 | FromDiscord | <leorize> try hovering on `for` and run `:Inspect` |
22:12:48 | FromDiscord | <leorize> it should tell you which hlgroups are applied |
22:14:22 | FromDiscord | <fabric.input_output> `@repeat` |
22:14:42 | FromDiscord | <leorize> does your scheme not have highlight defined for that group? |
22:16:23 | FromDiscord | <fabric.input_output> idk |
22:16:33 | FromDiscord | <heysokam> dude, I'm so sick of int casting today 😭 |
22:16:36 | FromDiscord | <heysokam> I want to cry |
22:17:02 | FromDiscord | <leorize> actually that might be a bug |
22:17:02 | FromDiscord | <leorize> give me a sec and I'll push a fix |
22:17:26 | FromDiscord | <leorize> yea it's a bug, I think neovim might have changed these group names since the time they're integrated...↵(@fabric.input_output) |
22:20:17 | FromDiscord | <leorize> gah, they didn't add any backwards compat groups |
22:21:16 | FromDiscord | <fabric.input_output> rip |
22:21:34 | FromDiscord | <fabric.input_output> wait there's no colors for import either |
22:21:42 | FromDiscord | <fabric.input_output> 💀 |
22:23:55 | FromDiscord | <heysokam> @beef can you explain the logic of how you reason through the conversions? |
22:24:16 | FromDiscord | <heysokam> I'm stuck with others, and I don't want to keep annoying you with 10mill of them 😦 |
22:28:39 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=CRcSxldl |
22:42:42 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=iiZqeYGV |
22:42:57 | FromDiscord | <leorize> @fabric.input_output\: I pushed a fix for your highlighting issue |
22:43:15 | FromDiscord | <heysokam> 8bytes, 88= 64bits... omg |
22:50:25 | FromDiscord | <fabric.input_output> In reply to @leorize "<@607600292086939696>\: I pushed a": yay it works now thanks a lot |
22:50:48 | FromDiscord | <fabric.input_output> oh man do I love when my code is colored |
23:04:32 | FromDiscord | <heysokam> +1 |
23:15:04 | FromDiscord | <heysokam> sent a code paste, see https://play.nim-lang.org/#pasty=sFQlxrVm |
23:18:29 | FromDiscord | <fabric.input_output> raw strings escape `\`s |
23:18:45 | FromDiscord | <fabric.input_output> leorize I think they've also removed `@namespace` |
23:20:12 | FromDiscord | <heysokam> `var s3 = r""""` but this also highlights as wrong. or is nimsuggest broken for raw strings? |
23:21:10 | FromDiscord | <heysokam> ah i see. its because a single double quote inside a raw string seems to be incompatible |
23:26:19 | FromDiscord | <fabric.input_output> btw how do you specify git commit hashes in github deps? |
23:26:34 | FromDiscord | <fabric.input_output> is it `url@hash` or `url@#hash` |
23:36:17 | FromDiscord | <Robyn [She/Her]> I need a better way to structure my MC code |
23:36:26 | FromDiscord | <Robyn [She/Her]> (edit) "I need a better way to structure my MC ... code" added "server" |
23:38:35 | FromDiscord | <Robyn [She/Her]> https://hst.sh/xisohilixa.sql |
23:48:09 | FromDiscord | <Robyn [She/Her]> Time to redo this shit from scratch again WOOO |
23:53:48 | FromDiscord | <leorize> pushed fix↵(@fabric.input_output) |