00:00:09 | * | tk quit (Quit: Well, this is unexpected.) |
00:00:33 | * | tk joined #nim |
00:04:16 | FromDiscord | <ynfle> I work without the expandMacros: macro but is illegal ast with it |
00:04:33 | FromDiscord | <Elegantbeef> I dont know what to say |
00:07:50 | FromDiscord | <ynfle> Next confusion. When the input to the macro is a json container type (object or array) I get an error lib/system/dollars.nim(131, 10) Error: request to generate code for .compileTime proc: Lit |
00:08:04 | FromDiscord | <ynfle> (edit) "Next confusion. When the input to the macro is" => "sent" | removed "json container type (object or array) I get an error lib/system/dollars.nim(131, 10) Error: request to generate" | "for .compileTime proc: Lit" => "paste, see https://play.nim-lang.org/#ix=3NjJ" |
00:15:07 | FromDiscord | <Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=3NjK |
00:15:40 | FromDiscord | <demotomohiro> You cannot store type to variable |
00:15:52 | FromDiscord | <Patitotective> 😕 |
00:16:06 | FromDiscord | <demotomohiro> Why do you want to put type to variable? |
00:16:14 | FromDiscord | <ynfle> @Patitotective What are you trying to do? |
00:16:22 | FromDiscord | <ynfle> In reply to @ynfle "Next confusion. When the": Seems related to https://github.com/nim-lang/Nim/issues/10753 |
00:17:09 | FromDiscord | <Patitotective> sent a code paste, see https://paste.rs/3K3 |
00:17:19 | FromDiscord | <Patitotective> (edit) "https://play.nim-lang.org/#ix=3NjM" => "https://play.nim-lang.org/#ix=3NjL" |
00:17:28 | FromDiscord | <Patitotective> (edit) "https://play.nim-lang.org/#ix=3NjL" => "https://play.nim-lang.org/#ix=3NjN" |
00:17:33 | FromDiscord | <ynfle> And then what? Are you in a macro? |
00:17:57 | FromDiscord | <Patitotective> (I'm creating a parser) |
00:18:11 | FromDiscord | <demotomohiro> Nim is statically typed language and types doesn't exists at runtime. |
00:18:21 | FromDiscord | <Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=3NjO |
00:18:39 | FromDiscord | <ynfle> I'd say template |
00:18:55 | FromDiscord | <Patitotective> In reply to @demotomohiro "Nim is statically typed": I always forgot :p |
00:18:56 | FromDiscord | <Patitotective> lol |
00:19:12 | FromDiscord | <Patitotective> Gonna do something different |
00:19:13 | FromDiscord | <Patitotective> Thanks |
00:19:14 | FromDiscord | <Patitotective> 🙃 |
00:19:20 | FromDiscord | <Patitotective> (edit) "forgot" => "forget" |
00:20:02 | FromDiscord | <demotomohiro> Maybe this is what you really needs: |
00:20:03 | FromDiscord | <demotomohiro> https://nim-lang.org/docs/manual.html#types-object-variants |
00:21:06 | FromDiscord | <Patitotective> I already have that lol, It's just that I only have `float` type, not 32 or 64↵Thanks anyways 🙃 |
00:21:08 | NimEventer | New question by How2: Add the ability to use tabulation in Nim, see https://stackoverflow.com/questions/70827737/add-the-ability-to-use-tabulation-in-nim |
00:23:40 | FromDiscord | <ynfle> In reply to @ynfle "Seems related to https://github.com/nim-lang/Nim/is": @demotomohiro Did you every find a solution for this issue of yours? |
00:29:51 | * | noeontheend joined #nim |
01:00:25 | FromDiscord | <Elegantbeef> there is a work around |
01:00:30 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3NjS |
01:04:06 | FromDiscord | <Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=3NjT |
01:12:02 | FromDiscord | <Elegantbeef> Warning are compile time |
01:13:27 | FromDiscord | <Patitotective> So `echo`?↵The thing is when I parse some _NiPrefs_ file it has to convert any `float32` to `float`, so it does warn you `Implicit conversion form float32 to float` |
01:13:56 | FromDiscord | <Patitotective> (edit) "So `echo`?↵The thing is ... when" added "that" |
01:16:26 | FromDiscord | <Elegantbeef> Well an echo isnt the best since it happens at runtime and can mess the program using your library up |
01:17:12 | FromDiscord | <Patitotective> Maybe I should just say that it does that in the docs (?) |
01:17:42 | FromDiscord | <Elegantbeef> Well i mean you make it more useless |
01:17:59 | FromDiscord | <Elegantbeef> Do users need to know this or the programmers that use this library? |
01:19:23 | * | krux02 quit (Remote host closed the connection) |
01:19:47 | FromDiscord | <Patitotective> In reply to @Elegantbeef "Do users need to": This only happens when you are writing your own _NiPrefs_ file, in which case you don't normally write floats, so I guess no |
01:20:17 | FromDiscord | <Patitotective> (edit) "writing your own" => "parsing a" |
01:23:15 | FromDiscord | <Elegantbeef> So perhaps just a warning in the source |
01:27:58 | * | vicfred joined #nim |
01:30:04 | FromDiscord | <Elegantbeef> Maybe with `-d:niPrefsFloatConv` but idk |
01:30:20 | FromDiscord | <Patitotective> In reply to @Elegantbeef "So perhaps just a": But isn't that going to warn the user every time the user uses the library? |
01:30:36 | FromDiscord | <Elegantbeef> The programmer yes if the convert float -\> float32 |
01:31:52 | FromDiscord | <Patitotective> sent a code paste, see https://play.nim-lang.org/#ix=3NjY |
01:32:14 | FromDiscord | <Elegantbeef> Oh then I dont know what to do, just document the behaviour |
01:32:25 | FromDiscord | <Elegantbeef> The end user doesnt need to know this really afaict |
01:32:47 | FromDiscord | <Patitotective> ok, thanks 🙃 |
01:40:00 | FromDiscord | <demotomohiro> In reply to @ynfle "<@!288750616510201856> Did you every": I forget about the issue and workaround. |
02:21:47 | * | neurocyte0917090 quit (Ping timeout: 256 seconds) |
02:41:46 | * | vicfred_ joined #nim |
02:44:02 | * | vicfred quit (Ping timeout: 250 seconds) |
02:44:57 | * | noeontheend quit (Ping timeout: 240 seconds) |
02:46:29 | * | noeontheend joined #nim |
02:49:45 | * | arkurious quit (Quit: Leaving) |
02:58:24 | FromDiscord | <Evrensel Kişilik> are there C blocks in Nim? |
02:58:28 | FromDiscord | <Evrensel Kişilik> i mean |
02:58:37 | FromDiscord | <Evrensel Kişilik> can i write C in a Nim sousrce? |
02:58:38 | FromDiscord | <Elegantbeef> Can you emit C code inline? |
02:58:47 | FromDiscord | <Evrensel Kişilik> bot |
02:58:55 | FromDiscord | <Evrensel Kişilik> you can't understand all questions |
02:59:09 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3Nkl |
02:59:13 | FromDiscord | <Evrensel Kişilik> oh nooo |
02:59:13 | FromDiscord | <Elegantbeef> Cant tell if you still think i'm a bot or are still jokiing |
02:59:15 | FromDiscord | <Evrensel Kişilik> what's this |
02:59:28 | FromDiscord | <Elegantbeef> an emit pragma which emits backend code |
02:59:29 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Cant tell if you": you can't manipulate my mind |
02:59:31 | FromDiscord | <Evrensel Kişilik> ! |
02:59:34 | FromDiscord | <Elegantbeef> In this case C code |
02:59:41 | FromDiscord | <Evrensel Kişilik> loooooooooooooook |
02:59:47 | FromDiscord | <ElegantBeef> If he cant manipulate your mind, can I? |
02:59:59 | FromDiscord | <Evrensel Kişilik> In reply to @ElegantBeef "If he cant manipulate": :BANNED: |
03:00:11 | FromDiscord | <Evrensel Kişilik> i like it |
03:00:14 | FromDiscord | <Evrensel Kişilik> damn |
03:00:17 | FromDiscord | <Evrensel Kişilik> we can write C |
03:00:18 | * | Gustavo6046 quit (Remote host closed the connection) |
03:00:41 | * | Gustavo6046 joined #nim |
03:00:43 | FromDiscord | <Elegantbeef> Yes it makes interop easier |
03:01:09 | FromDiscord | <Evrensel Kişilik> https://github.com/nim-lang/Nim/wiki/Nim-for-C-programmers |
03:01:47 | FromDiscord | <Elegantbeef> Yea it's surprisingly a good language |
03:02:12 | FromDiscord | <Evrensel Kişilik> please leave this server @ElegantBeef |
03:02:16 | FromDiscord | <Elegantbeef> No |
03:02:18 | FromDiscord | <Evrensel Kişilik> i dont want to talk to a bot |
03:02:32 | FromDiscord | <Elegantbeef> Well i'm not a bot |
03:02:38 | FromDiscord | <Elegantbeef> Come use matrix and you can be a bot too |
03:02:52 | FromDiscord | <Evrensel Kişilik> loooooooooooooooook |
03:03:05 | FromDiscord | <Elegantbeef> Looking |
03:03:17 | FromDiscord | <Evrensel Kişilik> no sugar left in my home right now |
03:03:25 | FromDiscord | <Evrensel Kişilik> and it is 06:03 |
03:03:37 | FromDiscord | <Evrensel Kişilik> i need to drink tea |
03:03:37 | FromDiscord | <Elegantbeef> Shame how will you have your tea |
03:03:41 | FromDiscord | <Evrensel Kişilik> do you understand? |
03:03:45 | FromDiscord | <Evrensel Kişilik> you can'T |
03:03:49 | FromDiscord | <Evrensel Kişilik> cuz you're a bot |
03:03:55 | FromDiscord | <Evrensel Kişilik> you can't taste tea |
03:03:56 | FromDiscord | <Elegantbeef> No i dont understand cause i dont drink tea |
03:03:57 | * | noeontheend quit (Ping timeout: 240 seconds) |
03:04:03 | FromDiscord | <Evrensel Kişilik> 😱 |
03:04:25 | FromDiscord | <Evrensel Kişilik> sooooooooooooooooooooooooooooo |
03:04:27 | FromDiscord | <Evrensel Kişilik> look |
03:04:53 | FromDiscord | <Evrensel Kişilik> is the only way writing C in Nim to use C libraries? |
03:05:07 | FromDiscord | <Evrensel Kişilik> or |
03:05:10 | FromDiscord | <Evrensel Kişilik> i think |
03:05:18 | FromDiscord | <Evrensel Kişilik> we can also write bindings right? |
03:05:24 | FromDiscord | <Evrensel Kişilik> oh no |
03:05:26 | FromDiscord | <Evrensel Kişilik> oh nooooooooooooooooooooo |
03:05:34 | FromDiscord | <Evrensel Kişilik> loooook |
03:05:38 | FromDiscord | <Evrensel Kişilik> wait |
03:05:53 | FromDiscord | <Evrensel Kişilik> sent a code paste, see https://play.nim-lang.org/#ix=3Nkl |
03:05:54 | FromDiscord | <Evrensel Kişilik> this |
03:05:59 | FromDiscord | <Elegantbeef> You can interop with C |
03:06:03 | FromDiscord | <Evrensel Kişilik> nooooooooo |
03:06:06 | FromDiscord | <Evrensel Kişilik> wait |
03:06:08 | FromDiscord | <Evrensel Kişilik> im asking |
03:06:16 | FromDiscord | <Evrensel Kişilik> how does this work with debugger? |
03:06:26 | FromDiscord | <Elegantbeef> Not a clue |
03:06:42 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Not a clue": wdym? |
03:06:45 | FromDiscord | <Elegantbeef> Remember i'm only a bot in name |
03:06:55 | FromDiscord | <Elegantbeef> I've never tried debugging inline C |
03:07:11 | FromDiscord | <Elegantbeef> Ostensibly it writes it out somewhat properly |
03:07:16 | FromDiscord | <Evrensel Kişilik> oooooooooooook |
03:07:24 | FromDiscord | <Evrensel Kişilik> i have tooooo much work |
03:07:25 | FromDiscord | <Evrensel Kişilik> but |
03:07:35 | FromDiscord | <Evrensel Kişilik> i will take the debugger issue of this language |
03:07:58 | FromDiscord | <Evrensel Kişilik> i will make special things for the language |
03:08:39 | FromDiscord | <Evrensel Kişilik> hmmm |
03:08:41 | FromDiscord | <Evrensel Kişilik> for example |
03:08:48 | FromDiscord | <Evrensel Kişilik> in GDB you can't cast to `string` |
03:08:52 | FromDiscord | <leorize> emit is a PITA if you ask me |
03:09:08 | FromDiscord | <leorize> pretty much a hack, by design |
03:09:10 | FromDiscord | <Evrensel Kişilik> you can cast to `NimStringDesc` |
03:09:13 | FromDiscord | <Elegantbeef> It's |
03:09:18 | FromDiscord | <Elegantbeef> I mean there are benefits to it |
03:09:19 | FromDiscord | <Evrensel Kişilik> In reply to @leorize "emit is a PITA": you |
03:09:23 | FromDiscord | <Evrensel Kişilik> 😱 |
03:09:27 | FromDiscord | <Evrensel Kişilik> another BOT |
03:09:37 | FromDiscord | <leorize> the nim devs have mastered AI |
03:09:38 | FromDiscord | <leorize> fear us |
03:09:47 | FromDiscord | <Elegantbeef> Cant master compiler dev though 😛 |
03:09:47 | FromDiscord | <Evrensel Kişilik> where the fuck am i at? |
03:10:06 | FromDiscord | <Rika> The future |
03:10:11 | FromDiscord | <Rika> Or hell, you choose |
03:10:13 | madprops | the futon |
03:10:17 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "Or hell, you choose": look |
03:10:23 | FromDiscord | <Rika> In reply to @madprops "the futon": That’s me right now |
03:10:26 | FromDiscord | <Rika> In the futon |
03:10:28 | FromDiscord | <Evrensel Kişilik> consciousness |
03:10:37 | FromDiscord | <Evrensel Kişilik> they don't have that |
03:11:10 | FromDiscord | <Rika> Are you sure 😛 |
03:11:27 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "Are you sure 😛": this is the main question! |
03:11:38 | FromDiscord | <Evrensel Kişilik> what is consciousness |
03:11:53 | FromDiscord | <Evrensel Kişilik> im making a new language |
03:12:07 | FromDiscord | <Evrensel Kişilik> it is the best |
03:12:11 | FromDiscord | <Elegantbeef> So to explain just incase you're actually scared these "bots" are users of the Matrix protocol and use a bridge specifically to scare you |
03:12:20 | FromDiscord | <Rika> Lol |
03:12:23 | FromDiscord | <Evrensel Kişilik> you have to leave Nim |
03:12:26 | FromDiscord | <Evrensel Kişilik> and use my language |
03:12:30 | FromDiscord | <Evrensel Kişilik> 😱 |
03:12:42 | FromDiscord | <Rika> Can’t, it is a fact that Nim is the best language |
03:12:49 | FromDiscord | <Rika> Can’t get any better than Nim |
03:12:51 | FromDiscord | <Elegantbeef> Does it have wirth bitsets, distinct types, subrange types? |
03:12:53 | * | the-true-mind joined #nim |
03:13:11 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Does it have wirth": it is a scripting language |
03:13:13 | FromDiscord | <Evrensel Kişilik> but |
03:13:15 | FromDiscord | <leorize> does it have |
03:13:17 | the-true-mind | these glorious bots? |
03:13:21 | FromDiscord | <Evrensel Kişilik> oh no |
03:13:23 | FromDiscord | <Evrensel Kişilik> more bots |
03:13:26 | FromDiscord | <Evrensel Kişilik> i don't want more bots |
03:13:28 | FromDiscord | <Evrensel Kişilik> leave here |
03:13:29 | FromDiscord | <Evrensel Kişilik> get out |
03:13:40 | FromDiscord | <Rika> Lol |
03:13:40 | FromDiscord | <Elegantbeef> Yea leorize you fucking NPC |
03:13:54 | FromDiscord | <huantian> hold on lemme bootup my irc client |
03:13:56 | * | the-true-mind quit (Remote host closed the connection) |
03:13:58 | FromDiscord | <Evrensel Kişilik> sooooooooo |
03:14:11 | FromDiscord | <Elegantbeef> Yooooooo |
03:14:11 | FromDiscord | <Evrensel Kişilik> my language is usable for extending something |
03:14:28 | FromDiscord | <Evrensel Kişilik> but it is unsafe |
03:14:34 | FromDiscord | <Evrensel Kişilik> and pretty fast |
03:15:05 | FromDiscord | <Elegantbeef> Let me guess it's named CScript? |
03:15:06 | FromDiscord | <Evrensel Kişilik> very different than Python |
03:15:15 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Let me guess it's": oh nooo |
03:15:21 | FromDiscord | <Evrensel Kişilik> it is a VM |
03:15:26 | * | huantian joined #nim |
03:15:51 | FromDiscord | <Rika> PythonScript |
03:15:54 | FromDiscord | <Evrensel Kişilik> oh nooooooo |
03:16:01 | FromDiscord | <Evrensel Kişilik> dont tell me Python |
03:16:07 | FromDiscord | <Rika> Python 4 |
03:16:08 | FromDiscord | <Evrensel Kişilik> the worst language |
03:16:09 | FromDiscord | <Evrensel Kişilik> ever |
03:16:12 | huantian | dang I wish I had a programming language like python but a scripting language instead |
03:16:22 | huantian | and they gotta get rid of those nasty type hints |
03:16:33 | FromDiscord | <Evrensel Kişilik> In reply to @huantian "and they gotta get": looooooook |
03:16:38 | FromDiscord | <Evrensel Kişilik> i tried to use type hints |
03:16:41 | FromDiscord | <Evrensel Kişilik> its good |
03:16:42 | FromDiscord | <Evrensel Kişilik> but |
03:16:45 | FromDiscord | <Evrensel Kişilik> i can't use them |
03:16:49 | FromDiscord | <Evrensel Kişilik> cuz if i use them |
03:16:52 | FromDiscord | <Rika> Huantian is being sarcastic |
03:16:58 | FromDiscord | <Rika> Just in case you don’t know |
03:17:04 | FromDiscord | <Evrensel Kişilik> damn software will not work on older Pythons |
03:17:13 | FromDiscord | <Elegantbeef> I wish we had python that was faster and nothing like python |
03:17:20 | FromDiscord | <Rika> So rust |
03:17:28 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "I wish we had": it is my language |
03:18:07 | FromDiscord | <Elegantbeef> You're going to implement your language in Nim right? |
03:18:07 | FromDiscord | <Elegantbeef> Your new favourite langauge |
03:18:29 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "You're going to implement": OH NOOOOOO |
03:18:31 | FromDiscord | <Evrensel Kişilik> never |
03:18:39 | FromDiscord | <Evrensel Kişilik> it is implemented in C |
03:18:44 | FromDiscord | <Elegantbeef> Too fast? |
03:18:53 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Too fast?": it is my plan lol |
03:19:03 | FromDiscord | <Rika> Why not Pascal |
03:19:12 | FromDiscord | <Elegantbeef> Better C |
03:19:36 | FromDiscord | <Rika> I still have dreams of a world where Pascal was the C of that world |
03:19:58 | FromDiscord | <Elegantbeef> In that world Nim isnt created cause pascal grows into what Nim is |
03:19:59 | huantian | ok but consider implmeenting it in minecraft command blocks |
03:20:02 | FromDiscord | <Evrensel Kişilik> Pascal is a shit |
03:20:23 | FromDiscord | <Elegantbeef> The only downside is that to balance the odds one of the contributors to pascal makes a shitty language called "Get" |
03:20:30 | FromDiscord | <Evrensel Kişilik> https://github.com/pragmagic/godot-nim |
03:20:34 | FromDiscord | <Evrensel Kişilik> you BOT |
03:20:40 | FromDiscord | <Evrensel Kişilik> @ElegantBeef you are everywhere! |
03:20:46 | FromDiscord | <Elegantbeef> Hey something i've contributed to |
03:20:50 | FromDiscord | <Elegantbeef> I'm a good bot |
03:21:04 | huantian | can't believe beef contributes to nim projects |
03:21:17 | FromDiscord | <Elegantbeef> Same my creator was nice and gave me taste |
03:21:22 | FromDiscord | <Evrensel Kişilik> looooooooook |
03:21:23 | FromDiscord | <Elegantbeef> Imagine if i contributed to C projects |
03:21:27 | FromDiscord | <Evrensel Kişilik> is this thingy stable? |
03:21:36 | FromDiscord | <Elegantbeef> People have used it to make games |
03:21:40 | FromDiscord | <Elegantbeef> So it's somewhat |
03:21:50 | FromDiscord | <Evrensel Kişilik> what language is first Nim compiler written in? |
03:21:58 | FromDiscord | <Elegantbeef> Pscal |
03:22:02 | FromDiscord | <Elegantbeef> Pascal\ |
03:22:05 | FromDiscord | <Evrensel Kişilik> im leaving here |
03:22:18 | FromDiscord | <Elegantbeef> It was then transpiled using pas2nim |
03:22:19 | FromDiscord | <huantian> scary alternate universes |
03:22:24 | FromDiscord | <Elegantbeef> I mean Nim is heavily pascal inspired |
03:22:37 | FromDiscord | <Elegantbeef> 2/3 of the languages it gets inspiration from vocally are pascal 😀 |
03:22:49 | FromDiscord | <Elegantbeef> > It combines successful concepts from mature languages like Python, Ada and Modula |
03:22:49 | FromDiscord | <Rika> In reply to @Evrensel Kişilik "im leaving here": Bruh |
03:22:55 | FromDiscord | <Evrensel Kişilik> theeen |
03:22:59 | FromDiscord | <Evrensel Kişilik> compile to Pascal |
03:23:00 | FromDiscord | <Evrensel Kişilik> damn |
03:23:05 | FromDiscord | <Evrensel Kişilik> what a bullshit |
03:23:07 | FromDiscord | <Rika> No it compiles to C |
03:23:08 | FromDiscord | <Elegantbeef> But C is supported wider |
03:23:17 | FromDiscord | <Elegantbeef> Pascal is more obscure |
03:23:20 | FromDiscord | <Evrensel Kişilik> then why didn't you write it in C? |
03:23:22 | FromDiscord | <Evrensel Kişilik> firstly |
03:23:30 | FromDiscord | <Elegantbeef> Cause Araq prefered pascal |
03:23:36 | FromDiscord | <Evrensel Kişilik> what is that |
03:23:37 | FromDiscord | <Rika> Because the creator liked Pascal more |
03:23:44 | FromDiscord | <Rika> Araq is the creator |
03:23:46 | FromDiscord | <Elegantbeef> He wrote a pascal inspired langauge it in object pascal since he liked pascal more than C |
03:23:51 | FromDiscord | <Evrensel Kişilik> THE GOD 😱 |
03:23:57 | FromDiscord | <Elegantbeef> He used C as the IR as it's a widely supported language with performance |
03:24:18 | FromDiscord | <Evrensel Kişilik> 😱 😱 😱 😱 😱 😱 😱 😱 😱 |
03:24:23 | FromDiscord | <Rika> I mean technically Assembly is also a widely supported language with performance 😛 |
03:24:33 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "I mean technically Assembly": looooooook |
03:24:36 | FromDiscord | <huantian> yeah but who likes assembly |
03:24:37 | FromDiscord | <Rika> It’s a joke |
03:24:37 | FromDiscord | <Evrensel Kişilik> we are just NOOOBS |
03:24:41 | FromDiscord | <Evrensel Kişilik> we can't write assembly |
03:24:52 | FromDiscord | <Elegantbeef> Well i mean assembly isnt portable, but yes 😀 |
03:25:05 | FromDiscord | <Evrensel Kişilik> only MenuetOS devs aren't NOOBS |
03:25:18 | FromDiscord | <Evrensel Kişilik> they are real programmers |
03:25:42 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935012457263534161/net02.png |
03:25:48 | FromDiscord | <Evrensel Kişilik> respect this |
03:26:42 | FromDiscord | <Elegantbeef> Also the benefit of using C was seen when you were testing Nim code and a majority just worked 😛 |
03:27:07 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Also the benefit of": oh damn yes |
03:27:12 | FromDiscord | <Evrensel Kişilik> but look |
03:27:40 | FromDiscord | <Evrensel Kişilik> we can't do `(string)voidPtr` in evaluater |
03:27:58 | FromDiscord | <huantian> cast exists |
03:28:02 | FromDiscord | <Evrensel Kişilik> i can define Nim pseudo-types for this |
03:28:09 | FromDiscord | <Evrensel Kişilik> In reply to @huantian "cast exists": wdym? |
03:28:19 | FromDiscord | <huantian> actually I have no idea what you mean because I don't do C |
03:28:22 | FromDiscord | <Evrensel Kişilik> how can i cast to void pointer in Nim? |
03:28:22 | FromDiscord | <huantian> don't listen to me |
03:28:38 | FromDiscord | <leorize> `cast[pointer](stuff)` |
03:29:01 | FromDiscord | <demotomohiro> !eval echo cast[string](cast[pointer]("fooo")) |
03:29:03 | * | huantian quit (Quit: WeeChat 3.4) |
03:29:04 | NimBot | fooo |
03:29:38 | FromDiscord | <leorize> warning, does not work with arc |
03:29:53 | FromDiscord | <Evrensel Kişilik> In reply to @leorize "`cast[pointer](stuff)`": what is this |
03:29:57 | FromDiscord | <huantian> it doesn't work with arc? didn't know that |
03:30:03 | FromDiscord | <Elegantbeef> It's a bitwise cast to a void pointer |
03:30:14 | FromDiscord | <demotomohiro> `pointer` in Nim is `void` in C. |
03:30:20 | FromDiscord | <Evrensel Kişilik> In reply to @leorize "`cast[pointer](stuff)`": https://media.discordapp.net/attachments/371759389889003532/935013621602349086/unknown.png |
03:30:21 | FromDiscord | <Elegantbeef> Nim differentiates casting from type conversions |
03:30:28 | FromDiscord | <Evrensel Kişilik> nothing |
03:30:30 | FromDiscord | <Evrensel Kişilik> why? |
03:30:48 | FromDiscord | <huantian> In reply to @Evrensel Kişilik "": amazing background |
03:30:50 | FromDiscord | <leorize> yea, arc uses a different representation where a string is a pair of pointer and length, so casting it to pointer will remove the length |
03:31:07 | FromDiscord | <Evrensel Kişilik> In reply to @huantian "amazing background": cuz im making the cutest debugger |
03:31:32 | FromDiscord | <Evrensel Kişilik> str is a `string` |
03:31:35 | FromDiscord | <huantian> ah that makes sense |
03:31:43 | FromDiscord | <Evrensel Kişilik> how to cast it to void ptr? |
03:31:54 | FromDiscord | <Elegantbeef> You did |
03:31:58 | FromDiscord | <Evrensel Kişilik> NO |
03:32:08 | FromDiscord | <Evrensel Kişilik> oh no |
03:32:09 | FromDiscord | <Elegantbeef> `pointer` in nim is `vod` |
03:32:10 | FromDiscord | <Evrensel Kişilik> oh nooooooooooo |
03:32:13 | FromDiscord | <Evrensel Kişilik> wait |
03:32:16 | FromDiscord | <Evrensel Kişilik> it is Nim code |
03:32:17 | FromDiscord | <Elegantbeef> `void` i mean |
03:32:18 | FromDiscord | <Evrensel Kişilik> lol |
03:32:20 | FromDiscord | <Evrensel Kişilik> this app |
03:32:30 | FromDiscord | <Evrensel Kişilik> is a C thing in debugger |
03:32:31 | FromDiscord | <Evrensel Kişilik> lol |
03:32:32 | FromDiscord | <Evrensel Kişilik> wait |
03:32:44 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935014227071103027/unknown.png |
03:32:58 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935014287796232314/unknown.png |
03:33:00 | FromDiscord | <Evrensel Kişilik> this |
03:33:02 | FromDiscord | <Evrensel Kişilik> but |
03:33:09 | FromDiscord | <Evrensel Kişilik> other was a Nim thing right? |
03:33:22 | FromDiscord | <Evrensel Kişilik> soooooooooo |
03:34:11 | FromDiscord | <Evrensel Kişilik> `cast[pointer](str)` translates to `(void ) str` |
03:34:13 | FromDiscord | <Evrensel Kişilik> (edit) "str`" => "str)`" |
03:34:15 | FromDiscord | <Evrensel Kişilik> (edit) "str)`" => "str`" |
03:34:34 | FromDiscord | <Evrensel Kişilik> soooooo then |
03:34:54 | FromDiscord | <Evrensel Kişilik> `cast[string](void_ptr)` translates to `(NimStringDesc ) void_ptr` |
03:35:17 | FromDiscord | <Elegantbeef> Yes |
03:35:20 | FromDiscord | <Evrensel Kişilik> lemme try to stepping over C lines |
03:35:30 | FromDiscord | <Evrensel Kişilik> gimme C blocks |
03:37:30 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935015429271851088/unknown.png |
03:37:37 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3Nkv |
03:37:51 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935015514495918100/unknown.png |
03:37:55 | FromDiscord | <Evrensel Kişilik> oh it works like a charm |
03:37:58 | FromDiscord | <huantian> weird my syntax highlighting does not like the triple quotes |
03:38:14 | FromDiscord | <huantian> https://media.discordapp.net/attachments/371759389889003532/935015612118364231/unknown.png |
03:38:15 | FromDiscord | <huantian> funky |
03:38:24 | FromDiscord | <Evrensel Kişilik> sent a code paste, see https://play.nim-lang.org/#ix=3Nkw |
03:39:52 | FromDiscord | <Evrensel Kişilik> ????????????????????????? |
03:40:01 | FromDiscord | <Elegantbeef> It uses the Nim symbol |
03:40:07 | FromDiscord | <Evrensel Kişilik> soooooooooooooo |
03:40:10 | FromDiscord | <Evrensel Kişilik> that's what i said |
03:40:21 | FromDiscord | <Evrensel Kişilik> then |
03:40:26 | FromDiscord | <Evrensel Kişilik> its good |
03:40:40 | FromDiscord | <Evrensel Kişilik> i like it |
03:41:12 | FromDiscord | <Evrensel Kişilik> oh no |
03:41:14 | FromDiscord | <Evrensel Kişilik> look |
03:41:18 | FromDiscord | <Evrensel Kişilik> can i do |
03:42:15 | FromDiscord | <huantian> It's not about if you can, it's about if you should |
03:42:41 | FromDiscord | <Evrensel Kişilik> sent a code paste, see https://play.nim-lang.org/#ix=3Nkz |
03:42:42 | FromDiscord | <Evrensel Kişilik> ?????????????????????? |
03:44:26 | FromDiscord | <Evrensel Kişilik> 😱 |
03:44:35 | FromDiscord | <Evrensel Kişilik> this is too much for YOU BOTS |
03:45:05 | FromDiscord | <Evrensel Kişilik> why im not trying |
03:46:39 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935017728559939604/unknown.png |
03:46:46 | FromDiscord | <Evrensel Kişilik> soooooooooooooooooooooooooooo |
03:46:48 | FromDiscord | <Evrensel Kişilik> what is this? |
03:47:05 | FromDiscord | <Elegantbeef> You emitting bad C code |
03:47:24 | FromDiscord | <Evrensel Kişilik> IM NOT BAD |
03:47:36 | FromDiscord | <Evrensel Kişilik> you can't say bad to me |
03:47:42 | FromDiscord | <Evrensel Kişilik> :BANNED: |
03:48:18 | FromDiscord | <Evrensel Kişilik> sooo this ` syntax is only for symbol names? |
03:49:04 | FromDiscord | <Elegantbeef> Yes |
03:49:11 | FromDiscord | <Evrensel Kişilik> how can i do `#include ...`? |
03:50:22 | FromDiscord | <Elegantbeef> https://nim-lang.org/docs/manual.html#implementation-specific-pragmas-emit-pragma |
03:50:53 | FromDiscord | <Evrensel Kişilik> sooooooooooo |
03:50:56 | FromDiscord | <Evrensel Kişilik> look |
03:51:08 | FromDiscord | <Evrensel Kişilik> i will add some tricks to debugger |
03:51:22 | FromDiscord | <Evrensel Kişilik> sent a code paste, see https://play.nim-lang.org/#ix= |
03:51:24 | FromDiscord | <Evrensel Kişilik> this is string |
03:51:46 | FromDiscord | <Evrensel Kişilik> i will make the debugger to handle names from in this string (C code) |
03:52:17 | FromDiscord | <Evrensel Kişilik> and when you do mouse over on a name on C code |
03:52:20 | FromDiscord | <Evrensel Kişilik> it will handle it |
03:52:54 | FromDiscord | <Evrensel Kişilik> but looks like we don't have syntax highlighting for embedded C |
03:52:58 | FromDiscord | <Evrensel Kişilik> its bad 😦 |
03:54:06 | FromDiscord | <Elegantbeef> Yea might encourage people to use it 😛 |
03:55:10 | FromDiscord | <Rika> sent a code paste, see https://play.nim-lang.org/#ix=3NkL |
03:56:20 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "and if someone does": i think it must work |
03:56:28 | FromDiscord | <Evrensel Kişilik> GIMME TEA |
03:56:29 | FromDiscord | <Evrensel Kişilik> pls |
03:56:37 | FromDiscord | <Rika> what happens if someone constructs an emit from a macro 😛 |
03:57:05 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935020357587443722/5b645cde66be5d25a0c1e13c.png |
03:57:10 | FromDiscord | <Evrensel Kişilik> im eating this thing |
03:57:43 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "what happens if someone": 😱 |
03:58:11 | FromDiscord | <Rika> man might have a heart attack |
04:00:33 | NimEventer | New post on r/nim by kewlness: Question about nimble, see https://reddit.com/r/nim/comments/sbcqhh/question_about_nimble/ |
04:01:09 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "man might have a": do you want to eat? |
04:06:59 | FromDiscord | <Evrensel Kişilik> damn |
04:07:10 | FromDiscord | <Evrensel Kişilik> tell me |
04:07:22 | FromDiscord | <Evrensel Kişilik> is Nim faster than scripting languages? |
04:07:32 | FromDiscord | <Rika> uh? |
04:07:39 | FromDiscord | <Elegantbeef> It can be as fast as C |
04:07:42 | FromDiscord | <Evrensel Kişilik> v8 JavaScript is the fastest scripting language |
04:07:44 | FromDiscord | <Rika> it can even beat C |
04:07:52 | FromDiscord | <Elegantbeef> It's more about the programmer and less about a language |
04:07:52 | FromDiscord | <Rika> can v8 js beat C? |
04:08:13 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "It can be as": i don't think sooooo cuz there are soooo many things |
04:08:20 | FromDiscord | <Rika> ??? |
04:08:23 | FromDiscord | <Rika> have you tested it |
04:08:28 | FromDiscord | <Evrensel Kişilik> i see soo many things for a hello world app |
04:08:34 | FromDiscord | <Elegantbeef> You can play benchmark games all day long |
04:08:44 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "can v8 js beat": no but it is the fastest scripting language |
04:08:44 | FromDiscord | <Rika> yes, so? |
04:08:48 | FromDiscord | <Rika> ok? |
04:08:50 | FromDiscord | <Elegantbeef> Nim is a fast system programming language just like any other, in the right hands |
04:08:57 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Nim is a fast": soooooooooo |
04:09:22 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "yes, so?": im curious about how slower is that than pure C |
04:09:30 | FromDiscord | <Elegantbeef> It can be on par |
04:09:41 | FromDiscord | <Evrensel Kişilik> soooooo then |
04:09:51 | FromDiscord | <Evrensel Kişilik> i have GC |
04:09:55 | FromDiscord | <Evrensel Kişilik> and dynamic things |
04:10:02 | FromDiscord | <Evrensel Kişilik> but i have also performance |
04:10:06 | FromDiscord | <Evrensel Kişilik> and goooooooooooood C compatibility |
04:10:06 | FromDiscord | <Elegantbeef> Yes |
04:10:07 | FromDiscord | <Evrensel Kişilik> right? |
04:10:16 | FromDiscord | <Elegantbeef> It's like Go if it wasnt a mistake 😛 |
04:10:26 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "It's like Go if": wdym? |
04:10:32 | FromDiscord | <Evrensel Kişilik> do you think Nim is better than Go? |
04:10:44 | FromDiscord | <Elegantbeef> If i thought the other way i'd be using Go 😛 |
04:10:45 | FromDiscord | <Evrensel Kişilik> can i compile Nim source to .C? |
04:10:52 | FromDiscord | <Evrensel Kişilik> i want .c sources |
04:10:55 | FromDiscord | <Elegantbeef> You can output C code yes |
04:11:05 | FromDiscord | <Elegantbeef> `--nimcache:yourDirectory` |
04:11:11 | FromDiscord | <Evrensel Kişilik> sooooooooooooooooo |
04:11:17 | FromDiscord | <Elegantbeef> If you want to make it cleaner do `-d:danger` or `-d:release` |
04:11:19 | FromDiscord | <Evrensel Kişilik> how does that look like? |
04:11:30 | FromDiscord | <Elegantbeef> It's not very human readable but it looks like C |
04:11:34 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "If you want to": what are those? |
04:11:52 | FromDiscord | <Elegantbeef> Those are compiler flags for versions, by default nim compiles in debug mode |
04:11:52 | FromDiscord | <Rika> release build |
04:12:03 | FromDiscord | <Evrensel Kişilik> loooooooooook |
04:12:05 | FromDiscord | <Evrensel Kişilik> soooooooo |
04:12:16 | FromDiscord | <Elegantbeef> You can also do `--gc:arc` to use a deterministic move semantic based ARC |
04:12:17 | FromDiscord | <Evrensel Kişilik> you think it is better to use Nim instead of C |
04:12:22 | FromDiscord | <Elegantbeef> Yes |
04:12:39 | FromDiscord | <Evrensel Kişilik> i liked this language |
04:12:42 | FromDiscord | <Elegantbeef> It has a saner type system, and meta programming to make it more enjoyable to write |
04:12:43 | FromDiscord | <Evrensel Kişilik> the most important reason |
04:12:44 | FromDiscord | <Evrensel Kişilik> is |
04:12:57 | FromDiscord | <Evrensel Kişilik> docs page looks like Godot's |
04:13:19 | FromDiscord | <Elegantbeef> Some of nim's website was made by hugo, dont know about the docs design |
04:13:35 | FromDiscord | <Elegantbeef> Hugo is the same person that did godot's webiste/design |
04:13:37 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Some of nim's website": what is that? |
04:13:39 | FromDiscord | <Evrensel Kişilik> hmmmmmmmmmm |
04:13:59 | FromDiscord | <Elegantbeef> https://hugo.pro/ |
04:14:12 | FromDiscord | <Evrensel Kişilik> ah i know |
04:14:16 | FromDiscord | <Evrensel Kişilik> this |
04:14:17 | FromDiscord | <Evrensel Kişilik> ok |
04:14:22 | FromDiscord | <Evrensel Kişilik> soooooooooo |
04:14:31 | FromDiscord | <Evrensel Kişilik> loooooooooook |
04:14:42 | FromDiscord | <Evrensel Kişilik> this language is working on indents |
04:14:47 | FromDiscord | <Evrensel Kişilik> i don't want it |
04:14:58 | FromDiscord | <Rika> okay |
04:15:00 | FromDiscord | <Rika> thats fine |
04:15:03 | FromDiscord | <Rika> its a preference thing |
04:15:05 | FromDiscord | <Elegantbeef> Then dont use it 😀 |
04:15:14 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Then dont use it": the language? |
04:15:15 | FromDiscord | <Rika> wtf beef rude |
04:15:26 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "wtf beef rude": it is a BOT |
04:15:37 | FromDiscord | <Evrensel Kişilik> IT is acting like expected |
04:15:48 | FromDiscord | <Rika> i never knew bots could be so rude |
04:15:59 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "i never knew bots": oh nooo it is a MALFUNCTION |
04:16:05 | FromDiscord | <Evrensel Kişilik> maybe its hacked |
04:16:09 | FromDiscord | <Elegantbeef> I mean if someone doesnt like nim's significant whitespace, what do you say? 😀 |
04:16:28 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "I mean if someone": you HAVE TO add curly brackets support |
04:16:31 | FromDiscord | <Rika> the same thing but not rude XD |
04:16:32 | FromDiscord | <Evrensel Kişilik> i would say |
04:16:37 | FromDiscord | <Rika> In reply to @Evrensel Kişilik "you HAVE TO add": it was added before |
04:16:38 | FromDiscord | <Rika> then removed |
04:16:40 | FromDiscord | <Rika> no one used it |
04:16:48 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "then removed": oh |
04:16:52 | FromDiscord | <Evrensel Kişilik> if it is added once |
04:16:52 | FromDiscord | <Rika> and it was expensive in terms of maintenance to keep |
04:17:01 | FromDiscord | <Evrensel Kişilik> why would you remove it again? |
04:17:08 | FromDiscord | <Rika> no one used it and it was hard to maintain |
04:17:18 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "no one used it": really interesting as a reason |
04:17:45 | FromDiscord | <Evrensel Kişilik> i will make a new open source thing |
04:17:56 | FromDiscord | <Evrensel Kişilik> a goooood project |
04:17:58 | FromDiscord | <Evrensel Kişilik> in my mind |
04:18:07 | FromDiscord | <Evrensel Kişilik> soooooooooo i can write that in Nim |
04:18:08 | FromDiscord | <Rika> okay |
04:18:12 | FromDiscord | <Evrensel Kişilik> but |
04:18:19 | FromDiscord | <Evrensel Kişilik> it is using indentations |
04:18:34 | FromDiscord | <Rika> ok |
04:18:46 | FromDiscord | <Rika> you dont have to write it in nim |
04:19:33 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "you dont have to": sure |
04:19:38 | FromDiscord | <Evrensel Kişilik> then |
04:19:43 | FromDiscord | <Evrensel Kişilik> im leaving here |
04:19:44 | FromDiscord | <Evrensel Kişilik> bye |
04:20:15 | FromDiscord | <Rika> uh ok |
04:20:31 | FromDiscord | <Elegantbeef> Worth noting https://github.com/xigoi/nimdenter exists 😀 |
04:20:58 | FromDiscord | <Rika> oh yeah it did |
04:20:59 | FromDiscord | <Rika> i forgot |
04:21:00 | FromDiscord | <Rika> xd |
04:21:27 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Worth noting https://github.com/xigoi/nimdenter exi": ❤️ ↵ ❤️ ❤️ ❤️ ↵❤️ ❤️ ❤️ ❤️ ❤️ |
04:21:37 | FromDiscord | <Evrensel Kişilik> (edit) "In reply to @Elegantbeef "Worth noting https://github.com/xigoi/nimdenter exi": ... ❤️" added ". ↵ " |
04:21:38 | FromDiscord | <Elegantbeef> Think there is another one somewhere |
04:21:39 | FromDiscord | <Evrensel Kişilik> made it |
04:21:44 | FromDiscord | <Elegantbeef> I mean they're toys pretty much imo |
04:21:51 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "i forgot": you are a BAD helper |
04:21:58 | FromDiscord | <Evrensel Kişilik> this BOT is better than you |
04:22:11 | FromDiscord | <Rika> i mean bots dont forget |
04:22:20 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "i mean bots dont": you're right |
04:22:22 | FromDiscord | <Elegantbeef> I'm not a fucking elephant |
04:22:31 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "I'm not a fucking": sure cuz you're a software |
04:22:33 | FromDiscord | <Rika> 😦 |
04:22:34 | FromDiscord | <Evrensel Kişilik> you're cursed |
04:22:39 | FromDiscord | <Rika> lmao |
04:23:12 | FromDiscord | <Evrensel Kişilik> 😱 a stucked mind in electricity in a CPU 😱 |
04:24:19 | FromDiscord | <Evrensel Kişilik> is there macros? |
04:24:22 | FromDiscord | <Evrensel Kişilik> (edit) "macros?" => "macro?" |
04:24:36 | FromDiscord | <Elegantbeef> Yes there are Lisp inspired macros |
04:24:42 | FromDiscord | <Rika> oh buiy |
04:24:46 | FromDiscord | <Rika> boy |
04:24:51 | FromDiscord | <Rika> you're gonna explode |
04:25:02 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "Yes there are Lisp": Lisp? |
04:25:16 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "you're gonna explode": 😱 me? 😱 |
04:25:31 | FromDiscord | <Elegantbeef> Nim macros work on the AST and use a VM to evaluate the changes to the AST |
04:25:45 | FromDiscord | <Elegantbeef> So you write your own compiler passes to generate code from code |
04:25:48 | FromDiscord | <Elegantbeef> Unlike C's macros |
04:26:37 | FromDiscord | <Evrensel Kişilik> interesting |
04:26:45 | FromDiscord | <Evrensel Kişilik> soooo |
04:26:53 | FromDiscord | <Evrensel Kişilik> what is the way to make bindings for C libraries? |
04:27:07 | FromDiscord | <Elegantbeef> `c2nim` `futhark` `nimterop` `hcparse` |
04:27:11 | FromDiscord | <Evrensel Kişilik> firstly i will make bindings for this https://github.com/rohanrhu/jsonic |
04:27:29 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "`c2nim` `futhark` `nimterop` `hcparse`": what are these? |
04:27:34 | FromDiscord | <Rika> libraries or binaries |
04:27:40 | FromDiscord | <Rika> to aid with wrapping c libraries |
04:27:50 | FromDiscord | <Evrensel Kişilik> soooooooooo |
04:27:51 | FromDiscord | <Elegantbeef> What the human saidi |
04:27:57 | FromDiscord | <Rika> human? |
04:28:05 | FromDiscord | <Evrensel Kişilik> how can i use these functions with static linking? |
04:28:10 | FromDiscord | <Rika> did i ever say i was human? |
04:28:10 | FromDiscord | <Elegantbeef> Oh god you're not human? |
04:28:26 | FromDiscord | <Rika> In reply to @Evrensel Kişilik "how can i use": thats a bit more complicated i believe |
04:28:26 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "did i ever say": oh no 😱 |
04:28:35 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "thats a bit more": how? |
04:28:42 | FromDiscord | <haxscramper> Hcparse is pure R&D still, it is not usable now |
04:29:06 | FromDiscord | <Elegantbeef> Ah sorry |
04:29:42 | * | vicfred_ quit (Quit: Leaving) |
04:45:20 | FromDiscord | <Evrensel Kişilik> damn |
04:45:48 | FromDiscord | <Evrensel Kişilik> a turkish BTC exchange is down for hours |
05:17:20 | FromDiscord | <evil> Is it possible to use nim js to work with native script? |
05:26:13 | FromDiscord | <leorize> yes |
05:27:46 | FromDiscord | <Evrensel Kişilik> can i use inline assembly in Nim? |
05:31:38 | FromDiscord | <Rika> afaik yes |
05:32:01 | FromDiscord | <Evrensel Kişilik> then |
05:32:08 | FromDiscord | <Evrensel Kişilik> goooooooooooooooooooooooooooooooooooooooooooooooooooooooood |
05:32:14 | FromDiscord | <Evrensel Kişilik> i don't write assembly |
05:32:19 | FromDiscord | <Evrensel Kişilik> pls remove that feature |
05:32:34 | FromDiscord | <Evrensel Kişilik> i don't want it |
05:32:36 | FromDiscord | <Evrensel Kişilik> plsssssssss |
05:33:50 | FromDiscord | <Rika> you dont need to use the feature |
05:35:00 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "you dont need to": YOU TOLD ME THAT FOR BRACES |
05:35:07 | FromDiscord | <Evrensel Kişilik> i dont love you!!! |
05:35:16 | FromDiscord | <that_dude> You don't need braces either lol |
05:35:46 | FromDiscord | <that_dude> Imagine spending extra time typing when you don't need to |
05:35:58 | FromDiscord | <Evrensel Kişilik> if braces would exist you would not be have to use them toooooooooooooooooooooo |
05:36:09 | FromDiscord | <Evrensel Kişilik> In reply to @that_dude "Imagine spending extra time": :BANNED: |
05:36:53 | FromDiscord | <Evrensel Kişilik> loooooooooooooooook |
05:37:00 | FromDiscord | <Evrensel Kişilik> im doing Ctrl + M |
05:37:02 | FromDiscord | <Evrensel Kişilik> in VSCode |
05:37:08 | FromDiscord | <Evrensel Kişilik> it selects over blocks |
05:37:12 | FromDiscord | <Evrensel Kişilik> indentations are bulllshit |
05:37:23 | FromDiscord | <Rika> i mean |
05:37:24 | FromDiscord | <that_dude> just click the minus where it starts |
05:37:27 | FromDiscord | <Rika> lets not fight over it |
05:37:30 | FromDiscord | <that_dude> lol |
05:37:32 | FromDiscord | <that_dude> ^ |
05:37:37 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "lets not fight over": loooook |
05:38:01 | FromDiscord | <Evrensel Kişilik> i don't allow you to write Nim anymore |
05:38:06 | FromDiscord | <Evrensel Kişilik> you will write C |
05:38:18 | FromDiscord | <Rika> try me |
05:38:29 | FromDiscord | <that_dude> I think most people don't want me to write nim here. lol I asked so many questions just to make a very niche thing |
05:38:34 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "try me": 😱 are you a language? 😱 |
05:38:45 | FromDiscord | <Rika> uh |
05:38:48 | FromDiscord | <that_dude> (edit) "I think most people don't want me to write nim here. lol I asked so many questions just to make a very niche thing ... " added "that isn't even very useful" |
05:38:49 | FromDiscord | <Rika> thats not what that means |
05:38:52 | FromDiscord | <Rika> i mean okay |
05:38:53 | FromDiscord | <Rika> sure |
05:39:16 | FromDiscord | <Rika> In reply to @that_dude "I think most people": dont worry i dont remember SHIT about what you were making |
05:39:28 | FromDiscord | <Rika> tbh i dont remember anything past a few hours ago |
05:39:34 | FromDiscord | <that_dude> lol |
05:39:55 | FromDiscord | <that_dude> It was the thing to inject procs at run time |
05:40:06 | FromDiscord | <Rika> OH GOD |
05:40:21 | FromDiscord | <Rika> shh i dont need to remember ^_^ |
05:40:32 | FromDiscord | <that_dude> I'll haunt you with that |
05:40:38 | FromDiscord | <Rika> 😅 |
05:45:08 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "OH GOD": there is no a GOD |
05:45:13 | FromDiscord | <Evrensel Kişilik> :BANNED: |
05:45:53 | FromDiscord | <that_dude> In reply to @Evrensel Kişilik "there is no a": There is no YOU :BANNED: |
05:45:59 | FromDiscord | <Evrensel Kişilik> https://media.discordapp.net/attachments/371759389889003532/935047760904876042/dennisritchie.png |
05:46:01 | FromDiscord | <Evrensel Kişilik> except this |
05:46:06 | FromDiscord | <Rika> what the fuck is happening lmfaooo |
05:46:15 | FromDiscord | <Evrensel Kişilik> In reply to @that_dude "There is no YOU": ❤️ |
05:46:42 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "what the fuck is": we are discussing on banning you |
05:48:16 | FromDiscord | <Rika> don't worry it's happened plenty before i'm used to it |
05:50:56 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "don't worry it's happened": who the fuck did you do it to you? |
05:51:01 | FromDiscord | <Evrensel Kişilik> i will beat them!!!!!!!!!!!!!!!!!!!!!!!!!!! |
05:51:15 | FromDiscord | <Rika> y'all hyper as fuck |
05:53:35 | FromDiscord | <Elegantbeef> @that_dude\: I mean i dont mind you making the thing you're making, it's just an odd desire 😛 |
05:53:48 | FromDiscord | <Evrensel Kişilik> In reply to @Rika "y'all hyper as fuck": gimme them |
05:54:01 | FromDiscord | <Evrensel Kişilik> anyone can't ban you |
05:54:23 | FromDiscord | <that_dude> In reply to @Elegantbeef "<@532751332445257729>\: I mean i": Fair enough, I just don't know enough to properly implement everything myself. |
05:58:32 | FromDiscord | <Elegantbeef> My view is very much "You could spend time making your program more managable instead" but, you do you 😀 |
06:03:15 | FromDiscord | <that_dude> I did take another look at my current design and I think I decided that more than I should have at the end of some of my procs which was causing clashes in design. If I resolve that, I think I wouldn't even need the thing I'm working on. That said. I kinda do want to complete this project because I like the idea of it. |
06:03:49 | FromDiscord | <that_dude> (edit) "I did take another look at my current design and I think I decided that ... more" added "I did" |
06:04:26 | FromDiscord | <that_dude> When I edit my message, does it also update for you guys on irc/matric/... as well? |
06:04:41 | FromDiscord | <that_dude> (edit) "message," => "messages," |
06:04:47 | FromDiscord | <Elegantbeef> Sometimes it sometimes explodes |
06:26:18 | FromDiscord | <evoalg> Beefy, what use is that emit pragma if it can be done in Nim anyway? ... or can C do things that Nim can't & so that's why we'd use emit? |
06:26:49 | FromDiscord | <Elegantbeef> You want to include a C source file inside Nim |
06:27:13 | FromDiscord | <Elegantbeef> https://github.com/ftsf/nico/blob/main/nico/stb_vorbis.nim#L16-L32 |
06:27:16 | FromDiscord | <evoalg> instead of converting it to nim? |
06:28:40 | FromDiscord | <Elegantbeef> Yea |
06:29:26 | FromDiscord | <Elegantbeef> Though in that case i thinks it's just for the C header |
06:29:49 | FromDiscord | <evoalg> ahhh I see, like if it's someone else's well-thought-out C code, then it might be easier to use emit |
06:35:53 | * | Gustavo6046_ joined #nim |
06:37:17 | * | Gustavo6046_ quit (Read error: Connection reset by peer) |
06:37:32 | * | Gustavo6046_ joined #nim |
06:37:42 | * | Gustavo6046 is now known as Guest5580 |
06:37:42 | * | Guest5580 quit (Killed (calcium.libera.chat (Nickname regained by services))) |
06:37:42 | * | Gustavo6046_ is now known as Gustavo6046 |
06:37:42 | FromDiscord | <Elegantbeef> Generally you shouldnt use it though |
06:39:27 | FromDiscord | <evoalg> gotcha, thank you |
06:50:14 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "https://github.com/ftsf/nico/blob/main/nico/stb_vor": damn |
06:50:22 | FromDiscord | <Evrensel Kişilik> embedded C code is not highlighted |
06:51:18 | * | vicecea quit (Remote host closed the connection) |
06:51:40 | FromDiscord | <Elegantbeef> It's a string literal what do you expect |
06:51:46 | * | vicecea joined #nim |
06:52:21 | FromDiscord | <Elegantbeef> Plus it could be C++ or JS |
06:53:38 | FromDiscord | <Evrensel Kişilik> In reply to @Elegantbeef "It's a string literal": yes but it is possible to highlight |
06:55:15 | FromDiscord | <Elegantbeef> sent a code paste, see https://paste.rs/Bvw |
06:58:12 | FromDiscord | <Rika> how would you know what is a "c language emit" and which is not? |
06:58:25 | FromDiscord | <Elegantbeef> There is an rfc for it |
07:02:40 | FromDiscord | <Elegantbeef> Or atleast i thought here was |
07:03:13 | FromDiscord | <demotomohiro> emit pragms is not used frequently. |
07:03:56 | FromDiscord | <Elegantbeef> Indeed |
07:04:08 | FromDiscord | <Elegantbeef> There isnt much reason to use it in most cases |
07:21:30 | * | jjido joined #nim |
07:35:06 | * | vicecea quit (Remote host closed the connection) |
07:35:37 | * | vicecea joined #nim |
07:35:40 | * | Gustavo6046 quit (Ping timeout: 250 seconds) |
07:44:06 | * | Gustavo6046 joined #nim |
08:03:10 | * | PMunch joined #nim |
08:26:45 | * | jjido quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
08:39:48 | NimEventer | New post on r/nim by mavavilj: Is the safety improved when binding Nim to C/C++ or in which sense is Nim safe in such setting?, see https://reddit.com/r/nim/comments/sbhify/is_the_safety_improved_when_binding_nim_to_cc_or/ |
08:53:56 | FromDiscord | <narimiran> here is Nim 1.6.4RC, please try it out: https://github.com/nim-lang/nightlies/releases/tag/2022-01-24-version-1-6-e1f3c74bdc458d5d4c528b30f30eabb56a5778d3 |
09:01:20 | * | neurocyte0917090 joined #nim |
09:02:32 | FromDiscord | <Elegantbeef> Oh and @Phil new defaults breaks your code! |
09:04:34 | FromDiscord | <Phil> wait, "new" defaults? |
09:04:44 | FromDiscord | <enthus1ast> @Phil\: i've added bool and ref obj and also a small readme https://github.com/enthus1ast/nisane |
09:05:06 | FromDiscord | <Elegantbeef> I refactored it a bit |
09:05:10 | FromDiscord | <Phil> In reply to @Elegantbeef "Oh and <@180601887916163073> new": I am of confuse, did you already throw in that the procs generated are init(YOUR TYPE) ? |
09:05:13 | FromDiscord | <Elegantbeef> you new need to pass a flag |
09:05:19 | FromDiscord | <Elegantbeef> now\ |
09:05:34 | FromDiscord | <Phil> In reply to @enthus1ast "<@180601887916163073>\: i've added bool": nice! |
09:05:44 | FromDiscord | <Elegantbeef> You can chose between them |
09:06:02 | FromDiscord | <Phil> Check, but I'll more likely just refactor |
09:06:29 | FromDiscord | <Phil> I'll need to contemplate whether I want to keep "newModel(mytype)" or just straight up swap full on to "init(mytype)" |
09:08:23 | FromDiscord | <Phil> In reply to @enthus1ast "<@180601887916163073>\: i've added bool": I'll take a look at it after work, thanks for the update! |
09:08:37 | FromDiscord | <Elegantbeef> `new(MyType)`\↵(@Phil) |
09:08:58 | FromDiscord | <Elegantbeef> Though that might interfer with the systems |
09:15:43 | FromDiscord | <Phil> Ohhh that might actually make me stick with newModel as an alias for that new proc |
09:15:53 | FromDiscord | <Phil> newModel would be more specific |
09:15:55 | FromDiscord | <Phil> Hmmm |
09:21:33 | FromDiscord | <Elegantbeef> Well i havent tested if an exported `new` works |
09:21:44 | FromDiscord | <Elegantbeef> I assume it'll be ambiguous |
09:59:00 | FromDiscord | <Clonkk> sent a code paste, see https://paste.rs/BAb |
09:59:24 | FromDiscord | <Elegantbeef> Nah |
09:59:32 | FromDiscord | <Elegantbeef> a `new(Type)` definition |
10:00:10 | FromDiscord | <Phil> In reply to @Clonkk "Do you mean this": I might actually not consider that a disadvantage |
10:00:14 | FromDiscord | <Phil> hmm |
10:01:12 | FromDiscord | <Elegantbeef> Actually our new would be more specific so it'd work |
10:01:14 | FromDiscord | <Elegantbeef> Disregard |
10:01:27 | FromDiscord | <Clonkk> Well once you have the first one, it's easy to define one with a typedesc |
10:03:10 | FromDiscord | <Elegantbeef> Yea i forgot about the specificity rule of procedure dispatch |
10:04:52 | FromDiscord | <Elegantbeef> `proc new[T](_: typedesc[T]): T` vs `proc new(_: typedesc[MyType]): MyType` |
10:06:53 | FromDiscord | <Clonkk> You could even do `proc new[T: SomeBaseType](_: typedesc[T]): T ` I think |
10:07:08 | FromDiscord | <Elegantbeef> Yea |
10:07:10 | FromDiscord | <Elegantbeef> It's more specific |
10:07:13 | FromDiscord | <Clonkk> (or `ref SomeBaseType` for new semantic) |
10:07:31 | NimEventer | New Nimble package! slicerator - Iterator package aimed at more ergonomic and efficient iterators., see https://github.com/beef331/slicerator |
10:10:06 | FromDiscord | <Elegantbeef> I know that all, i just forgot about the dispatch rule 😛 |
10:11:25 | * | Gustavo6046 quit (Remote host closed the connection) |
10:11:51 | * | Gustavo6046 joined #nim |
10:29:07 | * | Gustavo6046 quit (Read error: Connection reset by peer) |
10:29:18 | * | Gustavo6046 joined #nim |
10:30:16 | NimEventer | New post on r/nim by mavavilj: VST SDK in Nim? How? When?, see https://reddit.com/r/nim/comments/sbj6cb/vst_sdk_in_nim_how_when/ |
10:51:45 | FromDiscord | <mratsim> In reply to @Elegantbeef "There isnt much reason": Me looking at my Cuda and OpenCL code 🤔 |
10:52:44 | arkanoid | when I do "proc foo[T](arg: typedesc[T])" I'm not sure what's the difference from `T` and `arg` in the proc body |
10:53:35 | FromDiscord | <mratsim> use proc foo(arg: typedesc[T]) |
10:53:43 | * | jmdaemon quit (Quit: ZNC 1.8.2 - https://znc.in) |
10:53:47 | FromDiscord | <mratsim> (edit) "typedesc[T])" => "typedesc)" |
10:53:57 | FromDiscord | <mratsim> without the T in bracket |
10:54:29 | FromDiscord | <mratsim> The main difference is in the bugs it might trigger |
10:54:47 | FromDiscord | <mratsim> typedesc/type/generics have a different, sometimes overlapping set of bugs. |
11:00:21 | * | Gustavo6046_ joined #nim |
11:00:41 | * | Gustavo6046 quit (Killed (erbium.libera.chat (Nickname regained by services))) |
11:00:41 | * | Gustavo6046_ is now known as Gustavo6046 |
11:02:27 | * | Gustavo6046 quit (Client Quit) |
11:06:22 | arkanoid | mratsim: thanks. Is there a safe net to avoid triggering those kind of bugs? Is "proc foo[T]" == "proc foo(arg: typedesc)" apart from the signature? |
11:13:34 | * | einh0rn joined #nim |
11:13:34 | * | einh0rn quit (Client Quit) |
11:13:54 | * | einhorn joined #nim |
11:19:04 | * | Vladar joined #nim |
11:21:06 | arkanoid | well, I've just refactored code to avoid _:typedesc[T] and it works correctly. Thanks! Much nicer now |
11:31:55 | * | Lord_Nightmare2 joined #nim |
11:32:06 | * | Lord_Nightmare quit (Read error: Connection reset by peer) |
11:33:34 | * | Lord_Nightmare2 is now known as Lord_Nightmare |
11:41:51 | FromDiscord | <mratsim> In reply to @arkanoid "well, I've just refactored": We have many such things in Nimbus so if you have a bug on that it's probably a syntax problem |
11:43:09 | FromDiscord | <mratsim> example: https://github.com/status-im/nimbus-eth2/blob/bef13b6/tests/consensus_spec/phase0/test_fixture_rewards.nim#L32 |
11:49:08 | * | einhorn quit (Quit: Enough internet for today.) |
11:54:58 | * | haakon joined #nim |
12:03:57 | * | jjido joined #nim |
12:18:52 | haakon | Does the compiler define the implicit `result` variable even when it's not used and `return` is used explicitly? |
12:19:27 | PMunch | Well it defines it, but it is optimised away during compilation |
12:20:56 | haakon | Ah, I see |
12:24:01 | PMunch | In general you don't have to worry too much about what Nim does, it mostly does the right thing |
12:24:17 | PMunch | Sure there is room for optimisation here and there, but for the most part it's pretty good |
12:25:36 | haakon | Yeah, that's my impression after a day of playing with it. Quite an enjoyable language so far |
12:33:58 | PMunch | Have anything particular in mind you want to use Nim for? |
12:39:00 | Amun-Ra | nim is great, I switched from zig to nim for my project(s) |
12:39:35 | FromDiscord | <Rika> Why? |
12:39:40 | FromDiscord | <Rika> About the switch |
12:40:16 | haakon | I'm just looking at nim for hobby side-projects (currently dabbling with a system to organize photo collections etc) |
12:40:29 | Amun-Ra | it gives much more freedom and writing library wrappers is pretty straightforward |
12:41:02 | Amun-Ra | (I'm writing old/retro/abandoned image formats viewer just to know and get used to the language) |
12:42:30 | PMunch | Huh, I thought Zig was supposed to be great at wrapping C code? I mean I based Futhark off-of the approach that Zig uses |
12:43:05 | PMunch | haakon, that's how it begins, suddenly you'll start missing it at work as well |
12:44:41 | * | Vladar quit (Remote host closed the connection) |
12:45:27 | Amun-Ra | don't get me wront, zig is fine, it's just I come from python world and I find nim overwall better |
12:45:30 | Amun-Ra | wrong* |
12:45:42 | Amun-Ra | and overall* ;> |
12:46:50 | FromDiscord | <Rika> Overwall |
12:50:36 | * | Vladar joined #nim |
12:56:55 | FromDiscord | <Evrensel Kişilik> does GC understand if i use a Nim variable inside C block? |
13:02:51 | FromDiscord | <Rika> No |
13:04:22 | PMunch | Amun-Ra, ah I see |
13:04:35 | PMunch | @Rika, I guess it would if you use --gc:boehm |
13:04:42 | PMunch | Haven't tried it though |
13:08:17 | FromDiscord | <Yepoleb> how would you pass a ref to a c block? |
13:10:12 | FromDiscord | <mratsim> In reply to @PMunch "In general you don't": I'm the only one who needs to worry :/ |
13:10:51 | * | pro joined #nim |
13:10:58 | PMunch | @Evrensel_Kişilik, in general you either pass a pointer to C to some data in Nim, and then you just take care to not destroy that object until the C function is done. If the C code keeps the reference somewhere you might have to use GC_ref and GC_unref. Although if a C library keeps a pointer it will typically also try to call some kind of free procedure from the same library it got the pointer from, so that shouldn't be a big problem to implement |
13:11:02 | FromDiscord | <mratsim> In reply to @Evrensel Kişilik "does GC understand if": you can use a Nim variable inside a C block, just don't let it escape from the function. Ergo it needs to be alive or C code will do use after free |
13:11:18 | PMunch | @Yepoleb, just pass it as a pointer |
13:11:36 | FromDiscord | <mratsim> You can even pass Nim callbacks to C |
13:12:15 | FromDiscord | <mratsim> for example, I pass this Nim function to a MP4 C library: https://github.com/mratsim/trace-of-radiance/blob/master/trace_of_radiance/io/mp4.nim#L115-L126 |
13:12:19 | PMunch | @mratsim, haha you and me both, trying to make sure Nim doesn't generate more code than necessary for microcontrollers is quite finicky |
13:13:27 | PMunch | The good news is that once I've done it and wrapped it in a nice library it's pretty easy to use for an end user :) |
13:13:46 | FromDiscord | <mratsim> Well these days, I just add support for my compile-time assembler |
13:13:52 | FromDiscord | <mratsim> I need to tackle ARM. |
13:15:03 | FromDiscord | <mratsim> I can't believe how poor the codegen can be for bigint :/ |
13:15:11 | FromDiscord | <mratsim> even in C. |
13:15:41 | PMunch | Hmm, is there anything I can run to get a mapping from Nim -> C identifiers? Essentially I want to wrap avr-nm and then turn the identifiers there into Nim file:line:column information |
13:16:25 | PMunch | You're truly doing great work though, I'm constantly amazed by the stuff you manage do to |
13:26:56 | FromDiscord | <mratsim> {.exportc.} with `LINE`? |
13:26:59 | FromDiscord | <mratsim> thanks 🙂 |
13:37:58 | arkanoid | mratsim, what's the meaning of "arg: type OtherType"? |
13:38:06 | PMunch | With `LINE`? |
13:40:00 | * | rockcavera joined #nim |
13:40:00 | * | rockcavera quit (Changing host) |
13:40:00 | * | rockcavera joined #nim |
13:55:55 | FromDiscord | <ajusa> Anyone know a good bloom filter implementation that works on the JS backend? I think Status and Disruptek have one, not sure about others |
13:57:30 | FromDiscord | <mratsim> In reply to @ajusa "Anyone know a good": our bloomfilter had very narrow requirement and is basically 50 lines of code iirc |
13:58:36 | FromDiscord | <mratsim> 39 LOC: https://github.com/status-im/nim-eth/blob/master/eth/bloom.nim |
13:59:03 | FromDiscord | <mratsim> I'm not even sure why it's using stint |
13:59:58 | FromDiscord | <ajusa> Oh wow it really is short. Do you think it'd be good enough for English spell checking? Looks like it is limited to 2048 bits, and I don't know enough about the implementation to gauge the false positive rate |
14:01:53 | FromDiscord | <mratsim> https://github.com/status-im/nim-eth-bloom#description↵↵> Ethereum bloom filters are implemented with the Keccak-256 cryptographic hash function. |
14:02:17 | FromDiscord | <mratsim> Using a cryptographic hash function seems overkill for your use-case |
14:02:32 | FromDiscord | <mratsim> There are also Cuckoo Filters iirc |
14:03:58 | FromDiscord | <ajusa> Yeah any generic hashing function would be good enough for me. I'll still give it a try though. No cuckoo filter implementations in Nim yet, though it doesn't look too crazy |
14:04:31 | FromDiscord | <mratsim> do remember that there are about 2⁸⁶ atoms in the universe |
14:05:08 | FromDiscord | <mratsim> if each atom contained an universe you still woudn't reach 2²⁰⁴⁸ |
14:30:18 | * | arkurious joined #nim |
14:46:56 | * | pro quit (Quit: WeeChat 3.4) |
14:50:46 | FromDiscord | <vindaar> computer scientists always get this wrong, huh 😛↵The number of atoms in the universe is O(10^80). Number of photons O(10^88). Big difference 🤣 2^86 is only \~10^26 so about the number of atoms in a liter of water 😅↵(@mratsim) |
14:52:36 | FromDiscord | <Rika> so 2^266 roughly, num of atoms in univ. |
15:06:21 | FromDiscord | <ynfle> Is this a bug https://play.nim-lang.org/#ix=3Nof ? It seems to be |
15:08:09 | FromDiscord | <ynfle> `varargs[typed]` won't accept an overloaded symbol |
15:08:19 | FromDiscord | <ynfle> Even as the only argument |
15:08:39 | FromDiscord | <ynfle> But just `typed` would |
15:24:04 | * | jjido quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
15:33:45 | FromDiscord | <mratsim> In reply to @vindaar "computer scientists always get": I'm neither a computer scientist nor a physicist :p |
15:41:05 | FromDiscord | <Rika> computer physicist |
15:45:12 | Amun-Ra | computer physician |
15:53:26 | FromDiscord | <mratsim> comphy |
15:59:42 | FromDiscord | <ache of head> LOL |
16:44:00 | arkanoid | mratsim, if I may ask, what's your background? Math? |
16:50:41 | Zevv | mratsim is a robot from outer space |
16:50:58 | arkanoid | meth? |
16:51:09 | FromDiscord | <Rika> methametics |
16:51:54 | * | Vladar quit (Quit: Leaving) |
16:52:31 | arkanoid | damn, Paul Erdős was right |
17:15:09 | FromDiscord | <mratsim> In reply to @arkanoid "<@570268431522201601>, if I may": I'm a mechanical engineer |
17:15:12 | * | noeontheend joined #nim |
17:20:15 | FromDiscord | <auxym> oh me too. miran is a civvie IIRC? |
17:27:33 | FromDiscord | <ynfle> In reply to @ynfle "Is this a bug": Bug report filed https://github.com/nim-lang/Nim/issues/19446 |
18:02:44 | Amun-Ra | do I have to check the result of allocCString (that's calling alloc0) for nil? |
18:22:37 | * | neceve joined #nim |
18:29:30 | * | jjido joined #nim |
18:40:01 | noeontheend | ;switch rust |
18:41:03 | FromDiscord | <Rika> `/ban noeontheend` |
18:41:22 | noeontheend | :( |
18:41:45 | FromDiscord | <Rika> is joke ;; |
18:43:42 | FromDiscord | <exelotl> `/ban Rika` |
18:45:06 | FromDiscord | <Rika> you cant ban me |
18:53:31 | arkanoid | I can't wrap my head around that emptySeq.low = 0 and emptySeq.high = -1 |
18:56:53 | FromDiscord | <demotomohiro> !eval echo @[].high |
18:56:55 | NimBot | -1 |
18:57:48 | FromDiscord | <demotomohiro> !eval echo @[].high, ", ", @[0].high |
18:57:50 | NimBot | -1, 0 |
18:59:10 | arkanoid | yeah, it is the index of first and last element, I know, but the concept of empty can't be contained inside this |
18:59:13 | FromDiscord | <demotomohiro> So, I guessn@[].high should be @[0].high - 1 because it has 1 less element. |
18:59:43 | arkanoid | high = (len - low) - 1 |
19:01:00 | arkanoid | or better, you need "start" and "len" to build low and high, but you can't use low and high to rebuild start and len, unless you bend the spoon and high = -1 if empty |
19:02:00 | * | jjido quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
19:02:41 | FromDiscord | <demotomohiro> Maybe @[].high == -1 because `for i in myseq.low .. myseq.high:` must not run when myseq.len == 0. |
19:03:47 | arkanoid | sure, that's the point, but it's confusing. Much better to "if i in low..<len" |
19:05:23 | * | Nuc1eoN left #nim (The Lounge - https://thelounge.chat) |
19:23:17 | * | noeontheend quit (Ping timeout: 256 seconds) |
19:30:12 | * | pro joined #nim |
19:38:08 | FromDiscord | <eyecon> In reply to @arkanoid "I can't wrap my": Wut |
19:38:39 | FromDiscord | <eyecon> I'm lucky that I didn't stumble upon that |
19:42:10 | FromDiscord | <Elegantbeef> !eval echo default(array[0,int]).high |
19:42:13 | NimBot | -1 |
19:42:27 | FromDiscord | <Elegantbeef> I'm fairly certain demotomohiro is right |
19:52:23 | FromDiscord | <Phil> Beef, question about constructor |
19:52:51 | FromDiscord | <Phil> What's events all about? Is that something in the works? Already working? |
19:53:34 | FromDiscord | <Phil> (edit) "events" => "events.nim" |
19:53:36 | FromDiscord | <IsaacPaul> typically -1 means not found so it makes sense, but if that's the reasoning then .low should also be -1. |
19:53:50 | FromDiscord | <IsaacPaul> (edit) "-1." => "-1 which it isn't." |
19:54:25 | FromDiscord | <ElegantBeef> https://github.com/beef331/constructor/tree/648de4bb6b69cb551e139f073643bddccc7f7cc1#events there you go, apart of one of the old macros that i might want to keep |
19:55:03 | FromDiscord | <ElegantBeef> Matrix bridge is slow right now |
19:55:13 | FromDiscord | <Phil> Ahhhh check, so a previous macro that might yet once again come back to life at one point |
19:55:44 | FromDiscord | <ElegantBeef> Well it still functions and isnt some obscure syntax |
19:56:17 | FromDiscord | <Phil> ~~if it isn't documented in the up to date master branch it doesn't exist~~ |
19:56:38 | FromDiscord | <ElegantBeef> Lol, i went through a lot of macros to get to the one liner 😛 |
19:59:06 | FromDiscord | <Phil> And man am I thankful that you have made these macros given that constructor is easily saving me hundreds of lines of codes that would make me want to shoot myself |
20:13:51 | FromDiscord | <evoalg> ooooo slicerator is in nimble |
20:15:19 | FromDiscord | <evoalg> hmm Package not found ... how to I update nimble's list |
20:16:21 | FromDiscord | <evoalg> `nimble refresh` works! |
20:18:29 | * | pro quit (Quit: WeeChat 3.4) |
20:37:57 | * | vicfred joined #nim |
20:44:14 | * | krux02 joined #nim |
21:06:47 | * | jjido joined #nim |
21:18:52 | arkanoid | what is slicerator? |
21:20:42 | FromDiscord | <kporika (kporika)> let settings = jester.newSettings(port=port) |
21:20:47 | FromDiscord | <kporika (kporika)> sent a long message, see http://ix.io/3Nq2 |
21:29:15 | * | yassernasc joined #nim |
21:38:58 | FromDiscord | <evoalg> sent a long message, see http://ix.io/3Nqa |
21:39:19 | FromDiscord | <Elegantbeef> Slicerator is my iterator package with a bunch of goodies |
21:39:43 | FromDiscord | <Elegantbeef> It started off mainly for just implementing a bunch of useful iterators for openarrays, but i've since added more functionality |
21:40:03 | FromDiscord | <Elegantbeef> It now has the abillity to create closure iterators from inline and reset or peek them |
21:40:37 | FromDiscord | <mratsim> Nim v2: slicing creates openarray by default |
21:40:43 | arkanoid | evoalg, isn't "for el in mysel.toOpenArray(newlow, newhigh)" even more efficient? |
21:40:46 | FromDiscord | <mratsim> cc @Araq |
21:41:09 | FromDiscord | <Elegantbeef> Arkanoid that's what my iterator does internally |
21:41:16 | FromDiscord | <Elegantbeef> It does a 0 copy iteration over the openarray slice you want |
21:41:48 | arkanoid | good! Sure, I'm writing custom slicing view on my arrow lib right now, so I feel on the right path |
21:42:05 | arkanoid | problem is how to do pythons step aka [low:end:step] |
21:42:09 | FromDiscord | <Elegantbeef> Funny if true given until 1.6 Nim couldnt use `[]` for iterators 😀↵(@mratsim) |
21:42:17 | FromDiscord | <mratsim> I think you can just copy my view @Arkanoid |
21:42:32 | FromDiscord | <mratsim> since you will likely need to do strided slices |
21:42:52 | arkanoid | yes |
21:43:32 | FromDiscord | <mratsim> https://github.com/mratsim/constantine/blob/master/research/kzg_poly_commit/strided_views.nim |
21:44:07 | FromDiscord | <Elegantbeef> And i mean even if slicerator's `[]` is pointless there are still nice utilities there 😀 |
21:44:14 | arkanoid | I've answered in #nim-science |
21:51:36 | FromDiscord | <hmmm> beefy can I play with your package with the colored ball? that seemed fun in an inim way |
21:51:57 | FromDiscord | <hmmm> or is not ready yet |
21:54:14 | FromDiscord | <IsaacPaul> Just in case anyone wants to know how to print a nim string in lldb:↵`p (char)myString.p.data`↵and so I can search it later 🙃 |
21:54:28 | FromDiscord | <Elegantbeef> Colored ball? |
21:54:33 | FromDiscord | <Elegantbeef> The nimscripter stuff? |
21:55:19 | FromDiscord | <hmmm> yes |
21:55:21 | FromDiscord | <Elegantbeef> https://www.jasonbeetham.com/snake/nicoscripter.html i mean you can play with this easily, otherwise use nimscripter and interop with your favourite graphics library be it drawim or nico |
21:55:55 | FromDiscord | <Elegantbeef> That wasnt a package i was working on i was just using nimscripter in a graphics environment to test it live |
21:56:35 | FromDiscord | <hmmm> ah ok 😊 |
21:57:02 | FromDiscord | <Elegantbeef> An example program is here https://github.com/beef331/nimscripter/blob/master/examples/macrorepl/macrorepl.nim |
21:57:24 | FromDiscord | <Elegantbeef> https://streamable.com/c6farb here it is in action |
22:01:38 | FromDiscord | <hmmm> woah this is so cool |
22:37:38 | * | jjido quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
22:39:23 | * | rockcavera quit (Remote host closed the connection) |
23:00:21 | * | noeontheend joined #nim |
23:09:14 | * | neceve quit (Ping timeout: 268 seconds) |
23:22:36 | * | rockcavera joined #nim |
23:22:36 | * | rockcavera quit (Changing host) |
23:22:36 | * | rockcavera joined #nim |