00:01:56 | * | krux02_ quit (Remote host closed the connection) |
00:15:13 | * | awe002 quit (Ping timeout: 264 seconds) |
00:17:38 | * | vicfred_ joined #nim |
00:20:07 | * | vicfred quit (Ping timeout: 246 seconds) |
00:21:49 | * | vicfred_ quit (Client Quit) |
00:23:32 | * | cybuster joined #nim |
01:13:22 | * | apahl quit (Ping timeout: 260 seconds) |
01:14:45 | * | apahl joined #nim |
01:15:49 | * | endragor joined #nim |
01:38:59 | * | endragor quit (Remote host closed the connection) |
01:39:08 | * | endragor joined #nim |
01:43:44 | * | oculuxe joined #nim |
01:45:52 | * | oculux quit (Ping timeout: 246 seconds) |
01:51:17 | * | apahl quit (Ping timeout: 260 seconds) |
01:53:02 | * | apahl joined #nim |
02:12:04 | * | cybuster quit (Quit: Leaving) |
02:33:35 | * | muffindrake quit (Ping timeout: 272 seconds) |
02:35:25 | * | muffindrake joined #nim |
02:43:38 | * | bung quit (Ping timeout: 256 seconds) |
02:44:49 | * | waleee-cl quit (Quit: Connection closed for inactivity) |
03:26:24 | * | mal``` quit (Quit: Leaving) |
03:26:59 | * | mal`` joined #nim |
03:27:19 | * | unclechu quit (Ping timeout: 246 seconds) |
03:27:39 | * | Zoom[m] quit (Ping timeout: 246 seconds) |
03:27:39 | * | rridley[m] quit (Ping timeout: 246 seconds) |
03:27:41 | * | planetis[m] quit (Ping timeout: 246 seconds) |
03:28:00 | * | apahl quit (Ping timeout: 246 seconds) |
03:28:01 | * | hnOsmium0001[m] quit (Ping timeout: 246 seconds) |
03:28:02 | * | Northstrider[m] quit (Ping timeout: 246 seconds) |
03:28:41 | * | Northstrider[m] joined #nim |
03:29:17 | * | silvernode[m] quit (Remote host closed the connection) |
03:29:22 | * | GitterIntegratio quit (Read error: Connection reset by peer) |
03:29:23 | * | darrion_oakenbow quit (Read error: Connection reset by peer) |
03:29:23 | * | guelosk[m] quit (Read error: Connection reset by peer) |
03:29:24 | * | ee7[m] quit (Remote host closed the connection) |
03:29:25 | * | vycb[m] quit (Remote host closed the connection) |
03:29:25 | * | lnxw37d4 quit (Remote host closed the connection) |
03:29:26 | * | codic quit (Remote host closed the connection) |
03:29:26 | * | jklhyd[m] quit (Remote host closed the connection) |
03:29:26 | * | slackytude[m] quit (Remote host closed the connection) |
03:29:26 | * | einichi quit (Remote host closed the connection) |
03:29:27 | * | BitPuffin quit (Read error: Connection reset by peer) |
03:29:27 | * | reversem3 quit (Read error: Connection reset by peer) |
03:29:27 | * | torbencarstens[m quit (Read error: Connection reset by peer) |
03:29:28 | * | skrylar[m] quit (Remote host closed the connection) |
03:29:28 | * | swamptest1[m] quit (Remote host closed the connection) |
03:29:28 | * | MTRNord[m] quit (Remote host closed the connection) |
03:29:29 | * | leorize[m] quit (Remote host closed the connection) |
03:29:29 | * | apahl joined #nim |
03:32:37 | * | vqrs quit (Ping timeout: 264 seconds) |
03:34:37 | * | vqrs joined #nim |
03:36:55 | * | hnOsmium0001[m] joined #nim |
03:38:55 | FromDiscord | <Joe-23> sent a code paste, see https://play.nim-lang.org/#ix=2uv4 |
03:39:33 | FromDiscord | <Joe-23> (edit) 'https://play.nim-lang.org/#ix=2uv4' => 'https://play.nim-lang.org/#ix=2uv5' |
03:40:25 | * | thomasross quit (Ping timeout: 264 seconds) |
03:43:29 | FromDiscord | <Elegant Beef> `proc a(args): float` |
03:43:31 | FromDiscord | <Elegant Beef> missing the `:` |
03:45:10 | FromDiscord | <Joe-23> ah |
03:45:11 | FromDiscord | <Joe-23> Right I see now |
03:45:12 | FromDiscord | <Joe-23> thanks |
03:47:38 | FromDiscord | <Rika> needs a better error message it seems |
03:49:47 | FromDiscord | <Joe-23> > needs a better error message it seems↵@Rika Its always very difficult to find what error I made because the compiler doesn't quite tell me what it is |
03:49:56 | FromDiscord | <Joe-23> I hope they improve the error messages |
03:51:56 | FromDiscord | <Rika> error messages are hard 😛 |
03:52:38 | FromDiscord | <Joe-23> But Rust I have to admit has a better error messaging ssytem |
03:52:42 | FromDiscord | <Joe-23> despite how hard it is to learn |
03:52:48 | FromDiscord | <Rika> well theyve got much more manpower than we have |
03:52:57 | FromDiscord | <Joe-23> Yeah that is a shame |
03:53:07 | FromDiscord | <Joe-23> It could also be the fact that Rust is an older language compared to Nim |
03:53:11 | FromDiscord | <Joe-23> when was Nim released anyways? |
03:53:13 | FromDiscord | <Rika> it is not |
03:53:15 | FromDiscord | <Rika> 2009 |
03:53:18 | FromDiscord | <Joe-23> Oh |
03:53:30 | FromDiscord | <Joe-23> > 2009↵@Rika Oh wow, I thought it is a recently made language |
03:53:34 | FromDiscord | <Rika> its really a matter of how many people |
03:53:41 | FromDiscord | <Joe-23> Yeah true |
03:53:50 | FromDiscord | <Joe-23> Why is Rust more popular than Nim? |
03:53:59 | FromDiscord | <Rika> that is a hard question to answer |
03:54:13 | FromDiscord | <Rika> since there is a massive number of factors to consider |
03:54:23 | FromDiscord | <Hearthstone> Isn't Rust backed by a big company? |
03:54:27 | FromDiscord | <Hearthstone> Or am i wrong |
03:54:28 | FromDiscord | <Rika> yes |
03:54:28 | FromDiscord | <Elegant Beef> Nim doesnt have a big backer, like Go/Rust/Kotlin |
03:54:29 | FromDiscord | <Rika> mozilla |
03:54:35 | FromDiscord | <Hearthstone> Yeah that's why |
03:54:36 | FromDiscord | <Joe-23> > Nim doesnt have a big backer, like Go/Rust/Kotlin↵@Elegant Beef I see |
03:54:42 | FromDiscord | <Joe-23> > Yeah that's why↵@Hearthstone That makes sense |
03:54:46 | FromDiscord | <Hearthstone> Mhm |
03:54:55 | FromDiscord | <Hearthstone> It's sad really |
03:55:14 | FromDiscord | <Rika> nim's biggest backer (status.im) is relatively unknown versus google/mozilla/jetbrains |
03:55:39 | FromDiscord | <Hearthstone> That's sad, because Nim really is awesome |
03:55:39 | FromDiscord | <Rika> especially google, try looking for someone who doesnt know google... |
03:56:19 | FromDiscord | <Hearthstone> :/ |
03:56:35 | FromDiscord | <Rika> hard to find a big sponsor though |
03:56:58 | FromDiscord | <Rika> then the issue of them possibly having a large influence on the direction of the language |
03:57:01 | FromDiscord | <Hearthstone> That's true |
03:57:10 | FromDiscord | <Rika> wonder if python had a big backer in its smaller days |
03:57:16 | FromDiscord | <Joe-23> > That's sad, because Nim really is awesome↵@Hearthstone Nim should honestly get more backers |
03:57:21 | FromDiscord | <Hearthstone> I don't think so |
03:57:28 | FromDiscord | <Joe-23> its really much better than Python, and is easier to learn than C++ |
03:57:32 | FromDiscord | <Rika> then let's just wait as long as python did 😛 |
03:57:33 | FromDiscord | <Joe-23> Python I reckon has more backers |
03:57:44 | FromDiscord | <Rika> i meant in its earlier days |
03:57:48 | FromDiscord | <Hearthstone> I think it was only able to gain popularity back then because it was when programming was brand new |
03:57:48 | FromDiscord | <Rika> 2005 or so |
03:58:01 | FromDiscord | <Joe-23> I see |
03:58:09 | FromDiscord | <Hearthstone> By brand new, i mean higher level programming languages |
03:58:12 | FromDiscord | <Hearthstone> :P |
03:58:29 | FromDiscord | <Rika> fun fact: python is technically older than java |
03:58:44 | FromDiscord | <Hearthstone> Technically? |
03:59:17 | FromDiscord | <Rika> well i dont know if you'd consider "python 1" truly python so |
03:59:46 | FromDiscord | <Rika> python 2 is younger than the start of java but python 1 is older |
04:00:12 | FromDiscord | <Hearthstone> Python 1 isn't truely Python? |
04:00:18 | FromDiscord | <Hearthstone> Python is Python |
04:00:36 | FromDiscord | <Hearthstone> Even if the syntax completely changes in the language (imo) |
04:00:48 | FromDiscord | <Rika> then you got your answer |
04:00:57 | FromDiscord | <Hearthstone> So even if the lang went from braces to indents. It's still the same language |
04:01:02 | FromDiscord | <Hearthstone> Noice |
04:06:02 | * | supakeen quit (Quit: WeeChat 2.8) |
04:06:37 | * | supakeen joined #nim |
04:09:39 | * | GitterIntegratio joined #nim |
04:09:39 | * | reversem3 joined #nim |
04:09:39 | * | codic joined #nim |
04:09:39 | * | BitPuffin joined #nim |
04:09:39 | * | unclechu joined #nim |
04:09:39 | * | guelosk[m] joined #nim |
04:09:39 | * | einichi joined #nim |
04:09:39 | * | planetis[m] joined #nim |
04:09:39 | * | leorize[m] joined #nim |
04:09:39 | * | MTRNord[m] joined #nim |
04:09:40 | * | darrion_oakenbow joined #nim |
04:09:40 | * | lnxw37d4 joined #nim |
04:09:45 | * | skrylar[m] joined #nim |
04:09:45 | * | Zoom[m] joined #nim |
04:09:45 | * | ee7[m] joined #nim |
04:09:45 | * | rridley[m] joined #nim |
04:09:46 | * | jklhyd[m] joined #nim |
04:09:46 | * | swamptest1[m] joined #nim |
04:09:46 | * | torbencarstens[m joined #nim |
04:09:46 | * | slackytude[m] joined #nim |
04:09:47 | * | vycb[m] joined #nim |
04:09:47 | * | silvernode[m] joined #nim |
04:31:45 | * | vicfred joined #nim |
04:36:03 | FromDiscord | <iWonderAboutTuatara> Questions |
04:36:27 | FromDiscord | <iWonderAboutTuatara> Does Nim treat strings stored in a const as string literals |
04:41:46 | FromDiscord | <Elegant Beef> Opposed to what? |
04:48:09 | * | opal quit (Write error: Broken pipe) |
04:48:09 | * | leorize quit (Remote host closed the connection) |
04:51:16 | FromDiscord | <iWonderAboutTuatara> Also another question,how does Nim macros compare to rust macros? |
04:58:06 | FromDiscord | <Rika> much stronger |
04:58:20 | FromDiscord | <Rika> at least from what i heard from everyone here in this chat |
05:00:18 | * | opal joined #nim |
05:01:25 | * | NimBot joined #nim |
05:04:15 | * | leorize joined #nim |
05:08:49 | FromDiscord | <iWonderAboutTuatara> Apparently rust proc macros need to be stored in another file |
05:08:54 | FromDiscord | <iWonderAboutTuatara> Wdym much stronger though |
05:09:04 | FromDiscord | <iWonderAboutTuatara> Power, flexibility, readability, learning curve, usability |
05:09:38 | FromDiscord | <Rika> pretty much all afaik |
05:09:43 | FromDiscord | <Rika> not sure on some |
05:09:49 | FromDiscord | <Rika> but i can say theyre pretty easy to use |
05:10:01 | FromDiscord | <Rika> since they can be treated the same as function calls |
05:10:04 | FromDiscord | <Rika> or can be pragmas |
05:10:17 | FromDiscord | <Rika> so maybe that also ticks your flexibility box |
05:10:33 | FromDiscord | <Rika> but also to tick that box you can have untyped ast or typed ast macros |
05:10:44 | FromDiscord | <Rika> unfortunately no reader macros if you;re from lisp |
05:11:02 | FromDiscord | <Rika> learning curve is still kinda high ~~but not as high as rust lifetimes~~ |
05:11:44 | FromDiscord | <Rika> readability is kinda horrid since theyre full of either `nnk{Smth}.newTree(...)` or `new{Smth}(...)` constructions if not using `quote do:` |
05:12:01 | FromDiscord | <Rika> but if its using `quote do:` they look basically like regular proc code |
05:12:09 | FromDiscord | <Rika> power i cant tell you |
05:12:11 | FromDiscord | <Rika> i dont know |
05:22:30 | FromDiscord | <Joe-23> Is there a way to install nimble |
05:22:44 | FromDiscord | <Joe-23> https://github.com/nim-lang/nimble |
05:22:48 | FromDiscord | <Joe-23> So I git clone it |
05:23:02 | FromDiscord | <Joe-23> And then how would I install it for Windows? |
05:24:23 | FromDiscord | <Rika> it should have been installed when you installed nim |
05:24:39 | FromDiscord | <Joe-23> Oh |
05:24:42 | FromDiscord | <Rika> also there are instructions on the readme |
05:24:54 | FromDiscord | <Joe-23> cause https://pragmagic.github.io/godot-nim/master/index.html#getting-started-adding-nim-to-existing-project I am going to try out Godot-nim |
05:25:07 | FromDiscord | <Joe-23> and it wants me to have it installed |
05:25:11 | FromDiscord | <Joe-23> but good its preinstalled |
05:25:49 | * | narimiran joined #nim |
05:26:12 | * | CcxWrk quit (Ping timeout: 256 seconds) |
05:29:38 | * | CcxWrk joined #nim |
05:30:40 | * | leorize quit (Remote host closed the connection) |
05:47:39 | FromDiscord | <Joe-23> https://pragmagic.github.io/godot-nim/master/index.html#getting-started-creating-project |
05:48:16 | FromDiscord | <Joe-23> > https://pragmagic.github.io/godot-nim/master/index.html#getting-started-creating-project↵@Joe-23 Since I don't have `git` on Windows, `git clone --depth=1 https://github.com/pragmagic/godot-nim-stub.git myproject` is it ok to just directly download this file? |
05:48:42 | FromDiscord | <Joe-23> Or can I just skip this step? |
05:50:25 | FromDiscord | <Elegant Beef> I mean yea you can, but gitbash is easy to get |
05:56:44 | * | bung joined #nim |
05:57:56 | * | solitudesf joined #nim |
05:59:34 | * | opal quit (Write error: Broken pipe) |
06:03:14 | * | opal joined #nim |
06:03:41 | FromDiscord | <Joe-23> Thanks 🙂 |
06:06:34 | * | narimiran quit (Ping timeout: 265 seconds) |
06:06:42 | * | opal quit (Remote host closed the connection) |
06:06:46 | * | leorize joined #nim |
06:07:36 | * | Vladar joined #nim |
06:11:24 | * | opal joined #nim |
06:37:54 | * | vicfred quit (Quit: Leaving) |
06:50:46 | FromDiscord | <Joe-23> Is Godot going to officially implement Nim in Godot 4.0? |
06:51:13 | FromDiscord | <Elegant Beef> Probably not, there are too many language bindings for that to be maintainable with their small dev team |
06:51:31 | FromDiscord | <Elegant Beef> Plus the current devs arent even the ones that made the nim bindings |
06:52:10 | FromDiscord | <Joe-23> > Plus the current devs arent even the ones that made the nim bindings↵@Elegant Beef Oh I see, that is a bit of a shame |
06:52:28 | FromDiscord | <Elegant Beef> It'd be cool since godot's gdscript is very similar to nim's syntax |
06:57:04 | FromDiscord | <Joe-23> > It'd be cool since godot's gdscript is very similar to nim's syntax↵@Elegant Beef Yeah plus they will get the benefit of higher performance |
07:03:52 | FromDiscord | <iWonderAboutTuatara> How would I go about checking if a string contains the same letter twice? |
07:04:28 | FromDiscord | <iWonderAboutTuatara> Not searching for a particular letter, and the seq holding this is about 400k items long, so it needs to be somewhat efficient |
07:12:09 | FromDiscord | <Joe-23> sent a long message, see http://ix.io/2uvB |
07:16:07 | Araq | iWonderAboutTuatara: scan through the string like so: |
07:16:19 | Araq | var seen: set[char] = {} |
07:16:55 | Araq | for c in s: if c in seen: echo "twice! ", c; seen.incl c |
07:18:21 | FromDiscord | <iWonderAboutTuatara> I'll try that, but I have no idea what that cide is doing |
07:19:32 | Araq | so read one of our tutorials |
07:19:44 | FromDiscord | <iWonderAboutTuatara> Oh you're araq |
07:19:47 | FromDiscord | <iWonderAboutTuatara> Just noticed lol |
07:19:51 | FromDiscord | <iWonderAboutTuatara> Which one? |
07:22:15 | FromDiscord | <iWonderAboutTuatara> It's not that I don't know what the blocks mean, I just have no idea what they're doing combined with each other |
07:22:59 | FromDiscord | <iWonderAboutTuatara> @Araq[IRC]#0000 |
07:23:08 | Araq | well a set[char] is a set. we remember the characters we have seen |
07:23:27 | Araq | if we see a char again, it occured at least twice in the input string |
07:23:56 | FromDiscord | <iWonderAboutTuatara> What does s mean? |
07:24:01 | FromDiscord | <iWonderAboutTuatara> For c in a |
07:24:07 | Araq | it's your search string |
07:24:08 | FromDiscord | <Elegant Beef> Here is a blocked form if that clears it more |
07:24:10 | FromDiscord | <Elegant Beef> https://play.nim-lang.org/#ix=2uvE |
07:24:42 | FromGitter | <gogolxdong> @Araq, glad you are back from holiday. |
07:24:56 | FromDiscord | <iWonderAboutTuatara> Oh, that is much clearer |
07:25:04 | FromDiscord | <iWonderAboutTuatara> Thanks @Elegant Beef and @Araq[IRC]#0000 |
07:30:11 | FromGitter | <gogolxdong> Have you received my messages from skype? I can't text you on Telegram . |
07:34:00 | FromDiscord | <iWonderAboutTuatara> Can you use ifs in maps? |
07:34:33 | FromDiscord | <iWonderAboutTuatara> Nvm |
07:35:44 | FromDiscord | <Rika> use filter |
07:36:07 | * | krux02 joined #nim |
07:42:06 | FromDiscord | <iWonderAboutTuatara> Yeah |
07:46:48 | planetis[m] | try collect macro from sugar https://nim-lang.github.io/Nim/sugar.html |
07:52:29 | FromDiscord | <iWonderAboutTuatara> I feel like this is a stupid question, but I'm getting an error I cannot parse |
07:52:52 | FromDiscord | <Elegant Beef> Code + error = solution |
07:53:16 | FromDiscord | <iWonderAboutTuatara> The line is words.keepItIf(letter in it) |
07:53:28 | FromDiscord | <iWonderAboutTuatara> Letter is a char, words is a seq |
07:54:07 | FromDiscord | <iWonderAboutTuatara> Template/generic instiation of `keepItIf` from here |
07:54:18 | FromDiscord | <iWonderAboutTuatara> Is the error |
07:54:47 | FromDiscord | <iWonderAboutTuatara> (edit) '`keepItIf`' => '\`keepItIf\`' |
07:55:11 | FromDiscord | <Rika> seq of what |
07:55:18 | FromDiscord | <Rika> will not work if seq of string |
07:55:39 | FromDiscord | <iWonderAboutTuatara> Why is that? |
07:55:44 | FromDiscord | <iWonderAboutTuatara> It is a seq of string |
07:55:49 | FromDiscord | <Rika> because you're checking if a char is in a seq of string |
07:56:06 | FromDiscord | <Rika> that makes as much sense as checking an int in a seq of seq of int |
07:56:07 | FromDiscord | <iWonderAboutTuatara> You can't check if a char is in a string? |
07:56:13 | FromDiscord | <Rika> no that is not what you are doing |
07:56:25 | FromDiscord | <Elegant Beef> the predicate can be a body of code, afaik |
07:56:47 | FromDiscord | <iWonderAboutTuatara> From what I understood this goes through every element in the seq and only keeps it if it's fulfills some condition |
07:56:50 | FromDiscord | <Elegant Beef> But keep if will remove the entire seq |
07:56:53 | FromDiscord | <iWonderAboutTuatara> I think I misunderstood though |
07:56:54 | FromDiscord | <Elegant Beef> (edit) 'seq' => 'word' |
07:56:56 | FromDiscord | <Rika> yes it does |
07:57:08 | FromDiscord | <Rika> but you're thinking in one dimension too little |
07:57:31 | FromDiscord | <Rika> you're checking if a char is in a seq of strings -> youre iterating through the seq checking if a char is equal to a string |
07:57:35 | FromDiscord | <Elegant Beef> strings are a sequence of chars and you have a sequence of a sequence |
07:57:58 | FromDiscord | <iWonderAboutTuatara> I thought in keyword checks if char contains string? |
07:57:59 | FromDiscord | <Rika> you have to map the seq and keep if char in string instead |
07:58:03 | FromDiscord | <Rika> no |
07:58:06 | FromDiscord | <iWonderAboutTuatara> *other way around |
07:58:16 | FromDiscord | <Rika> you're doing it the wrong way |
07:58:36 | FromDiscord | <Rika> wait |
07:58:37 | FromDiscord | <Rika> hmm |
07:58:38 | FromDiscord | <Rika> no |
07:58:40 | FromDiscord | <Rika> that should work |
07:58:43 | FromDiscord | <Rika> what's the full error |
07:58:47 | FromDiscord | <Rika> show the compiler error |
07:58:52 | FromDiscord | <Rika> not the ide error |
07:59:01 | FromDiscord | <Rika> i'm kinda loopy; its late for me, sorry |
07:59:18 | FromDiscord | <Rika> actually no you misnamed your vars |
07:59:24 | FromDiscord | <Rika> yeah i am deffo being confused here |
07:59:33 | FromDiscord | <Rika> so words is a seq[string] |
07:59:36 | FromDiscord | <iWonderAboutTuatara> I think I'm more confused than you are tbh |
07:59:47 | FromDiscord | <iWonderAboutTuatara> Compiler error is the same |
07:59:55 | FromDiscord | <iWonderAboutTuatara> As the ide error |
08:00:29 | FromDiscord | <Rika> ok so you need to do `words.mapIt(it.keepItIf(letter in it))` (though i dont know if nesting these would work...) |
08:00:49 | FromDiscord | <iWonderAboutTuatara> What is that doing that this isn't? |
08:00:49 | FromDiscord | <Elegant Beef> if your code is `words.keepitIf(it.contains('b'))` it should work |
08:00:55 | FromDiscord | <iWonderAboutTuatara> I'll try it, just trying to understand |
08:01:08 | FromDiscord | <iWonderAboutTuatara> Is there a difference between contains proc and in keyword? |
08:01:14 | FromDiscord | <Rika> i'm confused really |
08:01:17 | FromDiscord | <Rika> i'm really confused |
08:01:26 | FromDiscord | <Rika> > Is there a difference between contains proc and in keyword?↵@iWonderAboutTuatara really, no |
08:01:32 | * | synshroud joined #nim |
08:01:46 | FromDiscord | <iWonderAboutTuatara> Error doesn't disappear if I do that @Elegant Beef |
08:02:02 | FromDiscord | <Elegant Beef> do you `import sequtils`? |
08:02:07 | FromDiscord | <iWonderAboutTuatara> I did |
08:02:17 | FromDiscord | <Elegant Beef> can we see the entire code on nim.playground? |
08:02:22 | FromDiscord | <iWonderAboutTuatara> I already made that mistake |
08:02:24 | FromDiscord | <iWonderAboutTuatara> Will send link |
08:02:48 | FromDiscord | <Rika> https://play.nim-lang.org/#ix=2uvI @iWonderAboutTuatara |
08:02:57 | FromDiscord | <Rika> keepItIf is inplace |
08:03:00 | FromDiscord | <iWonderAboutTuatara> I have to send it on my comp |
08:03:05 | FromDiscord | <Rika> see my link first |
08:03:06 | FromDiscord | <Rika> please |
08:03:13 | * | synshroud_ quit (Ping timeout: 264 seconds) |
08:03:22 | FromDiscord | <iWonderAboutTuatara> Yeah that's what I'm doing I think |
08:03:27 | FromDiscord | <iWonderAboutTuatara> But with variables in a proc |
08:03:39 | * | hnOsmium0001 quit (Quit: Connection closed for inactivity) |
08:03:49 | FromDiscord | <Rika> then what is wrong... |
08:04:32 | FromDiscord | <iWonderAboutTuatara> https://play.nim-lang.org/#ix=2uvJ |
08:04:35 | FromDiscord | <iWonderAboutTuatara> here is the playground |
08:04:42 | FromDiscord | <iWonderAboutTuatara> maybe I made a silly mistake somewhere |
08:04:52 | FromDiscord | <Rika> words is not var |
08:05:04 | FromDiscord | <Elegant Beef> yea the keepItIf proc requires a mutable data type |
08:05:09 | FromDiscord | <iWonderAboutTuatara> oh |
08:05:12 | FromDiscord | <iWonderAboutTuatara> oh of course |
08:05:20 | FromDiscord | <iWonderAboutTuatara> right |
08:05:20 | FromDiscord | <Rika> use filter |
08:05:23 | FromDiscord | <iWonderAboutTuatara> its directly mutating it |
08:05:32 | FromDiscord | <iWonderAboutTuatara> i'll just shadow words |
08:05:46 | FromDiscord | <Elegant Beef> filterIt will do what you want |
08:05:53 | FromDiscord | <Elegant Beef> Also you know in that case you could make those funcs 😄 |
08:06:02 | FromDiscord | <iWonderAboutTuatara> filterIt returns the new seq right? |
08:06:05 | FromDiscord | <Elegant Beef> yea |
08:06:18 | FromDiscord | <iWonderAboutTuatara> that was a really stupid mistake lmao |
08:06:35 | FromDiscord | <iWonderAboutTuatara> I should have thought that through a bit more |
08:06:37 | FromDiscord | <iWonderAboutTuatara> thanks for all the help |
08:07:02 | FromDiscord | <Elegant Beef> Wonder if the compiler should see if the type you're passing is of the same type just immutable and if so mention that |
08:07:20 | * | Trustable joined #nim |
08:07:43 | FromDiscord | <iWonderAboutTuatara> that would have been nice |
08:07:55 | FromDiscord | <iWonderAboutTuatara> the template/generic instatiation message is royally unhelpful |
08:08:10 | FromDiscord | <iWonderAboutTuatara> because it tells you literally nothing other than that the issue is in the template somewhere |
08:08:20 | FromDiscord | <Elegant Beef> I mean that error basically says "You're trying to use a proc that doesnt exist" |
08:08:21 | FromDiscord | <Rika> `/playground/nim/lib/pure/collections/sequtils.nim(599, 29) Error: 'words[pos`gensym3685461]' cannot be assigned to` |
08:08:24 | FromDiscord | <Rika> its there tho |
08:09:06 | FromDiscord | <Rika> the error is the one with the red scary error message |
08:09:08 | FromDiscord | <iWonderAboutTuatara> i dont know about anyone else but if i see an error coming from something that isnt my code i subconsiously dont even consider it |
08:09:26 | FromDiscord | <iWonderAboutTuatara> also you have to run it |
08:09:31 | FromDiscord | <iWonderAboutTuatara> it doesnt show up in nim check |
08:09:38 | FromDiscord | <Rika> yeah that's because it's a template |
08:09:46 | FromDiscord | <Rika> well |
08:09:48 | FromDiscord | <Rika> rather |
08:09:51 | FromDiscord | <iWonderAboutTuatara> is that just how that works? |
08:09:54 | FromDiscord | <Rika> i think the plugin you're using is just bad |
08:09:57 | FromDiscord | <Rika> at showing the correct error |
08:09:58 | FromDiscord | <Rika> no no |
08:10:00 | FromDiscord | <iWonderAboutTuatara> vscode nim official |
08:10:03 | FromDiscord | <Rika> i dont think it is |
08:10:12 | FromDiscord | <Rika> yeah vscode's plugin isnt the best |
08:10:27 | FromDiscord | <iWonderAboutTuatara> which ide do people use? |
08:10:36 | FromDiscord | <Elegant Beef> I use vscode |
08:10:38 | FromDiscord | <Rika> people say the best one is the neovim one |
08:10:40 | FromDiscord | <Elegant Beef> Many use nvim |
08:10:41 | FromDiscord | <Rika> best *plugin |
08:10:43 | FromDiscord | <Rika> for nim |
08:10:58 | FromDiscord | <iWonderAboutTuatara> but that's vim |
08:11:08 | FromDiscord | <iWonderAboutTuatara> which is a pretty major downside |
08:11:10 | FromDiscord | <Rika> well yeah that just means many nim users use vim |
08:11:22 | FromDiscord | <iWonderAboutTuatara> surprising actually |
08:11:39 | FromDiscord | <iWonderAboutTuatara> i can see way more users of something like rust using vim than nim |
08:11:41 | FromDiscord | <Rika> or rather the plugin that gets most love is the neovim one |
08:12:13 | FromDiscord | <Rika> its probably just a matter of how many experienced nim programmers use a certain editor |
08:12:26 | FromDiscord | <Elegant Beef> I'd love to improve the VScode extension, but i cant be arsed to write the js required 😄 |
08:12:29 | * | unclechu quit (Quit: killed) |
08:12:29 | * | GitterIntegratio quit (Quit: killed) |
08:12:30 | * | hnOsmium0001[m] quit (Quit: killed) |
08:12:32 | * | reversem3 quit (Quit: killed) |
08:12:49 | * | planetis[m] quit (Quit: killed) |
08:12:49 | * | guelosk[m] quit (Quit: killed) |
08:12:49 | * | ee7[m] quit (Quit: killed) |
08:12:49 | * | slackytude[m] quit (Quit: killed) |
08:12:49 | * | silvernode[m] quit (Quit: killed) |
08:12:49 | * | torbencarstens[m quit (Quit: killed) |
08:12:49 | * | einichi quit (Quit: killed) |
08:12:49 | * | codic quit (Quit: killed) |
08:12:49 | * | MTRNord[m] quit (Quit: killed) |
08:12:49 | * | swamptest1[m] quit (Quit: killed) |
08:12:49 | * | jklhyd[m] quit (Quit: killed) |
08:12:49 | * | skrylar[m] quit (Quit: killed) |
08:12:49 | * | lnxw37d4 quit (Quit: killed) |
08:12:51 | * | Zoom[m] quit (Quit: killed) |
08:12:54 | * | darrion_oakenbow quit (Quit: killed) |
08:12:55 | * | BitPuffin quit (Quit: killed) |
08:12:57 | * | vycb[m] quit (Quit: killed) |
08:12:58 | * | leorize[m] quit (Quit: killed) |
08:12:59 | FromDiscord | <iWonderAboutTuatara> nim syntax i feel like is the opposite of vim |
08:12:59 | FromDiscord | <Elegant Beef> Uhh |
08:12:59 | FromDiscord | <Rika> wdym? |
08:13:00 | * | rridley[m] quit (Quit: killed) |
08:13:00 | FromDiscord | <iWonderAboutTuatara> its meant to be friendly and relatively easy and such |
08:13:01 | FromDiscord | <iWonderAboutTuatara> and vim is vim |
08:13:07 | FromDiscord | <Elegant Beef> Vim isnt difficult to use |
08:13:08 | FromDiscord | <Rika> vim is meant to be fast as fuuuuuck |
08:13:25 | FromDiscord | <Rika> it is for those who havent learned the massive number of bindings to be productive |
08:13:28 | FromDiscord | <iWonderAboutTuatara> vim has a reputation for being very difficult to use |
08:13:51 | FromDiscord | <Elegant Beef> I mean it's all keyboard base so the intro UX is terrible |
08:13:54 | FromDiscord | <iWonderAboutTuatara> unless im really mixing things up here |
08:13:58 | FromDiscord | <Rika> you arent |
08:14:04 | FromDiscord | <Elegant Beef> But it's not hard to pick up really imo |
08:14:17 | FromDiscord | <Rika> compared to vscode it is lol |
08:14:32 | FromDiscord | <Rika> but once you go in you'll never want to go back out is what most people say |
08:14:38 | FromDiscord | <Rika> ~~ngl i agree~~ |
08:16:26 | FromDiscord | <Rika> anyway back at the issue, the vscode extension just shows "template/generic instantiation..." for template errors for some reason |
08:16:29 | FromDiscord | <Rika> i dont know why |
08:16:34 | FromDiscord | <Rika> prolly a nimsuggest issue |
08:16:40 | FromDiscord | <Rika> rather a nim check issue? |
08:16:56 | FromDiscord | <Rika> i dont know |
08:22:18 | * | Zoom[m] joined #nim |
08:23:42 | FromDiscord | <Joe-23> Hey does anyone know how to set up Godot Nim |
08:23:46 | FromDiscord | <Joe-23> I already downloaded |
08:23:52 | FromDiscord | <Joe-23> copied some of their nake files |
08:23:53 | FromDiscord | <Joe-23> etc |
08:23:58 | FromDiscord | <Joe-23> so now what do I do next? |
08:37:02 | solitudesf | https://github.com/pragmagic/godot-nim-stub |
08:38:44 | FromDiscord | <Kiloneie> What are the advantages of text only code editors like Vim? I never used them, i looked at them but i just see a wall of text. |
08:38:58 | bung | how can I get maximum count of displayable characters and fractional digits of float,double ? am passing data to mysql message package |
08:40:26 | solitudesf | @Kiloneie, its a text editor, what else do you expect to see |
08:40:45 | FromDiscord | <Kiloneie> Yeh well... |
08:41:00 | FromDiscord | <Rika> @Kiloneie the text only aspect is not what gives them advantages |
08:41:25 | FromDiscord | <Kiloneie> Easy extensibility since no gui elements? |
08:41:50 | FromDiscord | <Joe-23> sent a long message, see http://ix.io/2uvT |
08:41:56 | FromDiscord | <Joe-23> I am not too sure what to do there |
08:42:03 | FromGitter | <jorjun_twitter> @Kiloneie like programming languages, choice of IDE is down to temperament rather than objective advantages. |
08:42:36 | FromDiscord | <Rika> @Kiloneie well, depends on how extensions are implemented |
08:42:47 | FromDiscord | <Rika> use what you want |
08:42:59 | FromDiscord | <Rika> or what would give you the best experience |
08:43:32 | FromDiscord | <Kiloneie> Okay. Well i for one whenever i used vs studio i was like O,O... So many features... I know nothing about... |
08:43:53 | * | abm joined #nim |
08:45:03 | FromDiscord | <iWonderAboutTuatara> im having some weird issues with readchar stdin |
08:45:16 | FromDiscord | <iWonderAboutTuatara> i need to read multiple chars in quick sucession |
08:45:21 | FromDiscord | <iWonderAboutTuatara> but the thing is that pressing enter clears more than one |
08:49:56 | * | alfabetacain[m] joined #nim |
08:49:57 | alfabetacain[m] | Maybe the enter keypress sends both \r and \n? |
08:54:59 | * | somerandomguy231 joined #nim |
08:55:18 | FromDiscord | <iWonderAboutTuatara> I think it's sending multiple \n |
08:55:31 | FromDiscord | <iWonderAboutTuatara> And I don't really know how to fix that |
08:55:46 | * | einichi joined #nim |
08:55:46 | * | leorize[m] joined #nim |
08:55:46 | * | reversem3 joined #nim |
08:55:46 | * | MTRNord[m] joined #nim |
08:55:46 | * | hnOsmium0001[m] joined #nim |
08:55:46 | * | darrion_oakenbow joined #nim |
08:55:46 | * | unclechu joined #nim |
08:55:46 | * | planetis[m] joined #nim |
08:55:47 | * | GitterIntegratio joined #nim |
08:55:47 | * | codic joined #nim |
08:55:47 | * | guelosk[m] joined #nim |
08:55:47 | * | BitPuffin joined #nim |
08:55:47 | * | lnxw37d4 joined #nim |
08:55:52 | * | silvernode[m] joined #nim |
08:55:52 | * | slackytude[m] joined #nim |
08:55:52 | * | torbencarstens[m joined #nim |
08:55:52 | * | skrylar[m] joined #nim |
08:55:52 | * | vycb[m] joined #nim |
08:55:52 | * | rridley[m] joined #nim |
08:55:53 | * | swamptest1[m] joined #nim |
08:55:53 | * | ee7[m] joined #nim |
08:55:54 | * | jklhyd[m] joined #nim |
08:56:07 | FromDiscord | <iWonderAboutTuatara> In Godot engine we'd use timers to create the delay |
08:56:12 | FromDiscord | <iWonderAboutTuatara> But obviously not an option |
08:56:18 | alfabetacain[m] | You could filter out duplicates, maybe? |
08:58:32 | * | somerandomguy231 quit (Remote host closed the connection) |
09:03:29 | * | Zoom[m] left #nim ("Kicked by @appservice-irc:matrix.org : Idle for 30+ days") |
09:04:43 | * | opal quit (Ping timeout: 240 seconds) |
09:08:35 | FromDiscord | <Shucks> Did someone tried figet with figma yet? Is it possible to load a standard font on windows? Like arial. |
09:08:39 | FromDiscord | <Shucks> fidget* |
09:09:11 | * | wowi42_ quit (Quit: Kowa Bunga!!!) |
09:09:46 | FromDiscord | <Elegant Beef> If you pass the path to the font you should be able to load it |
09:10:05 | FromDiscord | <Elegant Beef> He added a `loadFontAbsolute` |
09:10:55 | * | wowi42 joined #nim |
09:11:52 | FromDiscord | <Shucks> mh, don't got that call on my build. But I just add the path instead then. |
09:15:05 | FromDiscord | <Shucks> Guess it's just looking for it in the project data folder. `Error: unhandled exception: File data\C:\Windows\Fonts\Arial\arial.ttf does not exist. [IOError]` |
09:15:37 | FromDiscord | <iWonderAboutTuatara> @alfabetacain[Matrix]#0000 that's a very good idea |
09:15:49 | FromDiscord | <iWonderAboutTuatara> Tagging irc users seems t be broke |
09:16:53 | alfabetacain[m] | Though it might be difficult to distinguish the weird multiple \n's behavior from the user actually pressing enter twice |
09:17:11 | alfabetacain[m] | I don't really know the use case, so it is hard to say |
09:18:45 | * | opal joined #nim |
09:19:29 | * | Vladar quit (Remote host closed the connection) |
09:19:59 | * | waleee-cl joined #nim |
09:20:19 | FromDiscord | <iWonderAboutTuatara> This kind of thing shouldn't be accepting empty chars anyway |
09:20:39 | FromDiscord | <iWonderAboutTuatara> Just filtering out /n should do the trick |
09:20:42 | FromDiscord | <iWonderAboutTuatara> Put the thing in a while block |
09:25:33 | FromDiscord | <Elegant Beef> @Shucks what version of fidget do you have installed? |
09:26:12 | FromDiscord | <Shucks> Just installed it some hours ago with nimble |
09:26:43 | FromDiscord | <Shucks> should be 0.4.2 then right |
09:27:45 | * | arecacea1 quit (Ping timeout: 240 seconds) |
09:28:09 | FromDiscord | <Elegant Beef> You dont have loadPathAbsolute? |
09:28:13 | FromDiscord | <Elegant Beef> Check the openglbackend |
09:28:18 | FromDiscord | <Elegant Beef> (edit) 'openglbackend' => 'openglbackend.nim' |
09:33:31 | * | Northstrider[m] quit (Quit: killed) |
09:33:39 | * | ehmry quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
09:35:36 | * | Northstrider[m] joined #nim |
09:37:52 | * | awe00 joined #nim |
09:40:28 | * | ehmry joined #nim |
09:43:44 | FromDiscord | <Shucks> No I dont got it |
09:44:14 | FromDiscord | <Elegant Beef> then do `nimble install fidget@#head` i believe |
09:44:24 | FromDiscord | <Elegant Beef> that will install the current master branch |
09:44:29 | FromDiscord | <Elegant Beef> I think that's the command |
09:45:05 | FromDiscord | <Shucks> Also don't got that one https://github.com/treeform/fidget/blob/master/src/fidget/openglbackend.nim#L412 |
09:45:08 | FromDiscord | <Shucks> Gonna do it thanks |
09:48:29 | FromDiscord | <Shucks> That worked |
09:51:48 | FromDiscord | <Shucks> `loadFontAbsolute("Arial", getEnv("WINDIR") & "\\Fonts\\arial.ttf")` Guess thats how it should be |
10:00:04 | FromDiscord | <haxscramper> Is it possible to get error from `compiles` check? E.g. `when not compiles(<expr>): <print-last-compilation-error-with-additional-annotations>` |
10:12:11 | * | awe00 quit (Read error: Connection reset by peer) |
10:41:13 | * | Vladar joined #nim |
11:10:56 | * | awe00 joined #nim |
11:30:34 | * | narimiran joined #nim |
11:52:12 | * | njoseph quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
11:52:20 | * | njoseph joined #nim |
12:06:01 | * | supakeen quit (Quit: WeeChat 2.8) |
12:06:38 | * | supakeen joined #nim |
12:22:44 | * | Trustable quit (Remote host closed the connection) |
12:34:26 | * | thomasross joined #nim |
12:36:58 | * | thomasross quit (Max SendQ exceeded) |
12:37:29 | * | thomasross joined #nim |
12:37:41 | Oddmonger | i was reading this: https://hookrace.net/blog/nim-binary-size/ |
12:38:04 | Oddmonger | but it makes use of «syscall» which seems nowaday to be a call convention |
12:38:16 | Oddmonger | and not a function anymore |
12:38:42 | leorize[m] | it's in a package |
12:39:46 | Oddmonger | yes i did the «import syscall», but the name has changed, then ? |
12:39:46 | FromDiscord | <Avatarfighter> Hello Leorize 👋 |
12:41:47 | FromDiscord | <Avatarfighter> Oddmonger: make sure you install the syscall package from nimble to be able to import that library |
12:41:49 | leorize[m] | !repo syscall |
12:41:49 | leorize[m] | looks like matrix goofed up again and didn't pass my msg through |
12:41:49 | leorize[m] | !repo syscall |
12:41:50 | disbot | https://github.com/def-/nim-syscall -- 9nim-syscall: 11Raw system calls for Nim 15 18⭐ 3🍴 7& 3 more... |
12:41:51 | disbot | https://github.com/def-/nim-syscall -- 9nim-syscall: 11Raw system calls for Nim 15 18⭐ 3🍴 7& 3 more... |
12:42:05 | Oddmonger | ah ok it's not shipped with vim |
12:42:09 | Oddmonger | ok thank you |
12:42:09 | leorize[m] | 👋 @Avatarfighter |
12:56:35 | FromDiscord | <SnokDev> how would i connect a api? lets say its a fact api! how would i get the text? from the api |
12:58:34 | * | awe00 quit (Read error: Connection reset by peer) |
13:06:36 | Zevv | snokdev: be more concrete, what kind of api are you talking about? |
13:06:44 | Zevv | C? HTTP? |
13:06:58 | bung | anyone familar with mysql protocol ? how it pack prepared query param of float type ? |
13:07:26 | bung | am confusing by its document description |
13:09:01 | Zevv | clyybber: you fixed the type bug?! |
13:13:10 | FromDiscord | <Clyybber> wait |
13:13:12 | FromDiscord | <Clyybber> which one |
13:13:27 | FromDiscord | <Clyybber> I was just talking about finishing the one branch |
13:13:35 | FromDiscord | <Clyybber> the one you were using |
13:13:44 | FromDiscord | <Clyybber> nothing new |
13:19:33 | FromDiscord | <SnokDev> https://some-random-api.ml/img/panda |
13:19:35 | FromDiscord | <SnokDev> that api |
13:20:01 | FromDiscord | <SnokDev> but i wana see how to make text stuff first |
13:25:36 | alehander92 | awesome panda |
13:30:20 | Zevv | o I thought I saw you mentioning something about the type bug being fixed |
13:31:24 | Zevv | snokdev: so you want to fetch that url, decode the json and then do something with it? |
13:31:41 | FromDiscord | <SnokDev> yeah |
13:32:10 | Zevv | start with httpclient, if you don't need async it's just one call |
13:32:15 | Zevv | https://nim-lang.org/docs/httpclient.html |
13:32:43 | Zevv | then you need the json module, and do a "parseJson" on your doc |
13:32:54 | Zevv | https://nim-lang.org/docs/json.html |
13:33:04 | FromDiscord | <SnokDev> ty |
13:42:40 | * | thomasross quit (Ping timeout: 256 seconds) |
13:43:21 | FromDiscord | <Clyybber> Zevv: the "typed" bug |
13:43:48 | FromDiscord | <SnokDev> sent a code paste, see https://play.nim-lang.org/#ix=2ux8 |
13:43:55 | FromDiscord | <SnokDev> cuz that gives an error |
13:46:52 | Zevv | clybber yeah that one :) |
13:46:56 | FromDiscord | <SnokDev> sorry if im dumb |
13:47:15 | FromDiscord | <Clyybber> Araq: ping |
13:48:29 | FromDiscord | <Avatarfighter> @SnokDev I can help you in a second I'm making an example with comment |
13:48:35 | Zevv | skokdev: what is your problem exactly? |
13:48:45 | Zevv | your paste is incoherent and can't work like this |
13:48:51 | Zevv | what *did* you try, and what problem do you see/ |
13:51:53 | FromDiscord | <Avatarfighter> Zevv: SnokDev's paste is what they tried |
13:53:16 | Zevv | that post is incomplete |
13:54:32 | FromDiscord | <Avatarfighter> That is true but I assume they pasted the relevant parts to their issue |
13:55:14 | Zevv | problem is, i can say "no, not like this" |
13:55:53 | Zevv | because it's out of order, has missing parts, etc. If I compile I get an error because "so like this?" does not compile :) |
13:56:08 | FromDiscord | <Avatarfighter> Ah I see what you mean now |
13:56:11 | Zevv | I can whip up the complete code, but that might not help someone learn how to do it |
13:56:44 | FromDiscord | <Avatarfighter> Yeah, I try to layer my example code with comments that explain why it works the way it does |
13:57:40 | Zevv | I just dump http://ix.io/2uxc and say "have fun" |
13:58:06 | FromDiscord | <Avatarfighter> lmao |
13:59:35 | FromDiscord | <Avatarfighter> I'm ngl I'm a bit dumbfounded as to why the httpclient library doesn't come with a proc that just fetches content without the user needing to allocate an httpclient |
13:59:40 | FromDiscord | <Avatarfighter> any ideas? |
13:59:57 | FromDiscord | <SnokDev> i am still conmfused about the "irc" thing |
14:00:05 | FromDiscord | <SnokDev> am i talking to robots? |
14:00:11 | FromDiscord | <Clyybber> lol no |
14:00:12 | Zevv | not that I'm aware of |
14:00:29 | FromDiscord | <Clyybber> @SnokDev its a bridge, between discord and irc |
14:00:37 | FromDiscord | <Clyybber> irc stands for internet relay chat |
14:00:42 | FromDiscord | <SnokDev> ah |
14:00:56 | FromDiscord | <Avatarfighter> This channel is bridged between multiple chatting services, when you see a name and a word wrapped in square brackets, the thing in the square brackets indicates the service they are using is |
14:01:07 | FromDiscord | <SnokDev> oki |
14:16:17 | bung | protobuf-nim, how to directly get the message buffer data ? |
14:22:40 | * | lritter joined #nim |
14:30:06 | * | synshroud_ joined #nim |
14:32:11 | * | synshroud quit (Ping timeout: 240 seconds) |
14:53:21 | FromDiscord | <XxDiCaprioxX> Is there any way to compare to strings ignoring their case than ` if str1.toLowerAscii() == str2.toLowerAscii(): ` |
14:53:33 | FromDiscord | <XxDiCaprioxX> (edit) 'Is there any way to compare to strings ignoring their case ... than' => 'Is there any way to compare to strings ignoring their caseother' |
14:54:18 | FromDiscord | <lqdev> https://nim-lang.org/docs/strutils.html#cmpIgnoreCase%2Cstring%2Cstring |
14:54:29 | FromDiscord | <lqdev> @XxDiCaprioxX ↑ |
14:55:13 | FromDiscord | <XxDiCaprioxX> Okay good |
14:55:29 | FromDiscord | <XxDiCaprioxX> Thanks |
15:08:52 | * | sentreen joined #nim |
15:11:30 | Zevv | Avatarfighter: my bet is that using a separate client encourages reuse - http keepalive |
15:21:05 | FromDiscord | <XxDiCaprioxX> Okay so: I make a discord bot but the question is unspecific:↵How can I make my bit react only if the call is at the beginning of the message? So ".or sicilian" should work while "fillertexttexthello .or sicilian" should not |
15:21:13 | FromDiscord | <XxDiCaprioxX> (edit) 'bit' => 'bot' |
15:22:12 | FromDiscord | <XxDiCaprioxX> Okay I have it |
15:22:17 | FromDiscord | <XxDiCaprioxX> It is .startsWith |
15:22:52 | * | junland quit (Quit: %ZNC Disconnected%) |
15:23:30 | * | junland joined #nim |
15:25:39 | * | Trustable joined #nim |
15:25:53 | FromDiscord | <Hearthstone> The call? |
15:28:11 | FromDiscord | <XxDiCaprioxX> if message.startsWith(call) |
15:29:05 | Zevv | disruptek: given that we can infer a cpsMagic call by pragma, we can now also infer a .cps. proc, so we should now be able to do a top level cps: block in a file and only transform cps procs, no need to pragma the individual procs |
15:32:37 | FromDiscord | <Clyybber> huh nice |
15:37:27 | disruptek | the pragma gets put there by .cps. or .cpsMagic. |
15:37:41 | disruptek | you're only .cpsCall. if we've rewritten you. |
15:42:19 | disruptek | we need cpsCall to include the root continuation type, too. |
15:42:55 | disruptek | i mean, we can infer it, but it has to be part of the isCpsCall machinery to determine if we can process it. |
15:58:11 | Zevv | hmm |
16:02:17 | * | hnOsmium0001 joined #nim |
16:03:48 | * | bouzu_ joined #nim |
16:10:41 | * | aresnikoff joined #nim |
16:11:48 | * | aresnikoff quit (Client Quit) |
16:12:14 | FromDiscord | <kodkuce> why do i have to write if not 22 in 0..2 insted if 22 not in 0.22, last one sounds better 🙂 |
16:12:42 | disruptek | try `notin`. you'll love it. |
16:12:42 | FromDiscord | <kodkuce> oh is there notin kayword |
16:12:50 | FromDiscord | <kodkuce> 🙂 |
16:30:49 | FromDiscord | <dk> akshually, `not 22 in 0..2` doesn't even compile irrc (`not (22 in 0..2)` does) |
16:37:31 | shashlick | @Yardanico - that arc bug you worked on in my plugins repo, did we ever get a bug report out of it? |
16:48:32 | * | Pisuke quit (Ping timeout: 256 seconds) |
16:49:04 | * | Sembei joined #nim |
16:52:52 | * | a_chou joined #nim |
16:55:11 | disruptek | disruptek is complicated. |
16:56:55 | Zevv | nah its not *that* bad |
16:58:45 | * | vicfred joined #nim |
16:59:35 | Zevv | ikn |
17:00:00 | * | a_chou quit (Remote host closed the connection) |
17:00:00 | Zevv | i know quite some more people more complicated than disruptek |
17:04:27 | hnOsmium0001 | wish it was `!in` instead of `notin` |
17:07:40 | disruptek | disruptek is broke. |
17:07:57 | alehander92 | disruptek be ok |
17:08:02 | alehander92 | ~disruptek |
17:08:03 | disbot | disruptek: 11a sexy fella with magic hands. |
17:08:03 | disbot | disruptek: 11don't listen to him |
17:08:03 | disbot | disruptek: 11an unsafe nil deref |
17:08:26 | alehander92 | ah wait i just realized broke != broken |
17:22:25 | * | FromDiscord quit (Remote host closed the connection) |
17:22:43 | * | FromDiscord joined #nim |
17:26:49 | shashlick | has anyone used --gc:arc across dll boundaries? |
17:43:20 | FromDiscord | <Zachary Carter> yes |
17:44:02 | shashlick | hey Z |
17:44:18 | FromDiscord | <Zachary Carter> Hey! |
17:44:49 | FromDiscord | <Zachary Carter> I'm using that `cr` library (written in C) for plugins - but it's been working with `--gc:arc` without issues |
17:45:06 | * | dddddd_ joined #nim |
17:46:14 | shashlick | i'm having segfaults if the dll manipulates a var that's owned by the main exe |
17:46:32 | shashlick | when the exe gets back control and wants to clean up |
17:47:24 | * | dddddd quit (Ping timeout: 256 seconds) |
17:50:09 | * | dddddd__ joined #nim |
17:52:25 | * | dddddd_ quit (Ping timeout: 264 seconds) |
17:53:02 | * | dddddd_ joined #nim |
17:53:33 | disruptek | not surprising, right? |
17:56:01 | * | dddddd__ quit (Ping timeout: 264 seconds) |
17:56:54 | * | dddddd joined #nim |
17:58:45 | * | dddddd_ quit (Ping timeout: 240 seconds) |
18:07:48 | shashlick | https://github.com/nim-lang/Nim/issues/15202 |
18:07:51 | disbot | ➥ --gc:arc segfaults if dll modifies object owned by main executable ; snippet at 12https://play.nim-lang.org/#ix=2uy8 |
18:08:35 | * | Kaivo quit (Ping timeout: 240 seconds) |
18:10:16 | Zevv | still disruptek, we know that anything calling a cpsMagic must be a cps, so we dont need to pass the continuation type to the cps macro |
18:10:26 | Zevv | all not that important, but it mig |
18:10:31 | Zevv | ht make things easier |
18:10:37 | Zevv | for the user, that is |
18:11:21 | * | Kaivo joined #nim |
18:11:24 | Zevv | did ar4q already tell us how to do compiler plugins then? |
18:11:37 | Zevv | because I can't seem to find much about that |
18:11:54 | disruptek | no, i think it's just something he says to make people go away. |
18:14:01 | Zevv | fair enough. |
18:14:18 | disruptek | you're suggesting that we infer the continuation type from the first cpsCall we find in a .cps.? what if there is more than one? |
18:14:34 | Zevv | make sure they match, is something we needto do anyway probably |
18:15:00 | Zevv | and if there are no cps calls, its not a cpsBlock, so its not a cps proc and we dont transform |
18:15:08 | disruptek | sounds almost sensible. |
18:15:10 | Zevv | that prepares the road to go global cps |
18:15:14 | Zevv | and only do what needs to be done |
18:15:24 | FromDiscord | <Recruit_main707> why does the compiler use proc {.noSideEffects.} instead of func? |
18:15:33 | Zevv | old probably |
18:15:49 | Zevv | i've learned not to look at the compiler for good nim code |
18:16:04 | FromDiscord | <Recruit_main707> new code still does, in fact, there is no func in the whole compiler i think |
18:16:18 | Zevv | thats funny. |
18:16:56 | Zevv | i think arac is currently working on making funcs more func, so maybe when that is done would be a good time to go use that in the compiler |
18:17:40 | Zevv | we can script that, just one by one change procs into funcs, and if it compiles, goto 10, if not, roll back and try another |
18:17:54 | Zevv | after a day or so the whole codebase is functionized |
18:19:37 | disruptek | i'm having trouble recompiling code in dust, so, i dunno, seems like we need more funcs. 🙄 |
18:20:25 | Zevv | need more cowbell |
18:23:13 | * | vicfred quit (Quit: Leaving) |
18:31:07 | * | synshroud joined #nim |
18:33:31 | * | synshroud_ quit (Ping timeout: 246 seconds) |
18:44:29 | * | Zectbumo joined #nim |
18:49:16 | disruptek | i'm starting to think it'd be easier to do this in a fucking shell script. |
18:49:30 | * | waleee-cl quit (Quit: Connection closed for inactivity) |
18:50:35 | Zectbumo | disruptek: I came in a bit late. What are you attempting to do? |
18:52:59 | disruptek | i'm trying to write a program that rewrites a program repeatedly and produces a smaller program that, nonetheless, yields the same semantic errors. |
18:53:36 | disruptek | so it involves rewriting the ast of the program during compilation; my program embeds the compiler. |
18:54:48 | disruptek | there are numerous problems with my approach. |
18:54:52 | Zevv | whois zectbumo |
18:55:07 | disruptek | ~zectbumo |
18:55:08 | disbot | no footnotes for `zectbumo`. 🙁 |
18:55:18 | disruptek | ~zevv |
18:55:19 | disbot | zevv: 11lazy and so is he. -- disruptek |
18:55:27 | disruptek | hmm. |
18:56:10 | Zevv | and proud of it |
18:56:40 | FromDiscord | <Varriount> disruptek: Why not use a fuzzer that supports corpus minimization? |
18:58:05 | Zectbumo | how do I add footnotes? |
18:58:11 | Zevv | yeah man minimize your corpus |
18:58:15 | disruptek | ~footnotes |
18:58:16 | disbot | no footnotes for `footnotes`. 🙁 |
18:58:18 | disruptek | ~footnote |
18:58:18 | disbot | footnote: 11added |
18:58:23 | disruptek | dafuq |
18:58:25 | disruptek | ~help |
18:58:31 | disruptek | oh yeah, do that. |
18:58:38 | Zectbumo | ~help |
18:59:33 | livcd | hey ya'll |
18:59:34 | disruptek | the reason i solve problems the way i do is because my knowledge is limited and i'm afraid to learn anything. |
18:59:36 | livcd | how is it going? |
18:59:44 | disruptek | aight, how are you? |
19:00:01 | livcd | recovering from COVID |
19:00:07 | disruptek | nice. |
19:00:18 | Zevv | so, how was it for you then |
19:00:45 | livcd | terrible. |
19:00:54 | livcd | Worst "flu" i ever had |
19:01:07 | disruptek | aren't you young? |
19:01:07 | * | fowl quit (Ping timeout: 260 seconds) |
19:01:25 | livcd | are not you young yourself? |
19:01:35 | disruptek | only relative to zevv. |
19:01:42 | * | sirn quit (Ping timeout: 260 seconds) |
19:01:48 | * | noonien joined #nim |
19:02:07 | Zevv | you know what. you're now personally the closest person I know that has had covid |
19:02:08 | * | fowl_ quit (Read error: Connection reset by peer) |
19:02:14 | * | kwilczynski quit (Read error: Connection reset by peer) |
19:02:27 | disruptek | livcd: you're in the UK, right? |
19:02:34 | livcd | I am in Austria |
19:02:40 | disruptek | oh wow. |
19:02:44 | Zevv | so, you almost ok now, or still down? |
19:03:03 | * | waleee-cl joined #nim |
19:03:06 | livcd | feeling very weak |
19:04:02 | livcd | So I dont even know how I got it. |
19:04:24 | Zevv | didn't lick elevator buttons I assume |
19:04:50 | * | fowl joined #nim |
19:05:06 | livcd | so what's new? Did disruptek finish his IC and was Nim acquired by Tencent? |
19:05:26 | Zevv | IC is gathering Dust. Arac was on holidays so nothing happened at all. |
19:06:35 | * | fowl_ joined #nim |
19:07:25 | * | kwilczynski joined #nim |
19:08:13 | disruptek | disruptek is a loser. |
19:08:17 | disruptek | fuck that guy. |
19:08:26 | Zevv | ashes to ashes |
19:08:33 | * | sirn joined #nim |
19:09:35 | * | kwilczynski quit (Max SendQ exceeded) |
19:10:06 | * | superbia joined #nim |
19:10:09 | livcd | I am happy I was able to order hoegaarden for 50c. Dont judge me :) |
19:10:16 | * | kwilczynski joined #nim |
19:11:18 | Zevv | no beer for you dude, get better first |
19:12:42 | FromDiscord | <lqdev> Araq: how'd your VM removal experiments go? |
19:13:01 | * | Vladar quit (Quit: Leaving) |
19:13:05 | livcd | Zevv: well i tested negative |
19:13:21 | FromDiscord | <Varriount> Araq is trying to remove the VM? How? |
19:13:27 | Zevv | oh so it was just a flu then :/ |
19:13:45 | livcd | Zevv: i mean i tested negative after recovering |
19:13:51 | * | superbia quit (Client Quit) |
19:13:53 | Zevv | Varriount: I guess by doing "select all" and then hit "del" |
19:14:05 | Zevv | livcd: ah ok |
19:14:26 | Zevv | Varrriount: I believe the c compiler will be called twice |
19:14:47 | Zevv | or something like that |
19:16:06 | * | kwilczynski quit (Max SendQ exceeded) |
19:16:43 | * | kwilczynski joined #nim |
19:16:46 | FromDiscord | <Rebel> sent a code paste, see https://play.nim-lang.org/#ix=2uyx |
19:16:58 | FromDiscord | <Rebel> Is the OS checking done at runtime or compile time? |
19:17:33 | Zevv | runtime if you use "if" |
19:18:29 | Zevv | but the defines are generated at compile time |
19:22:02 | FromDiscord | <Rebel> ok thanks for the quick response I am trying to make my final binary as small as possible so will separate it out and just use compiler flags to target specific OS |
19:22:51 | Zevv | if you use `when` instead of `if`, the `false` paths will not generate code |
19:23:06 | Zevv | `when` is the compile time variant of `if`, it's like `#ifdef` in C |
19:30:29 | FromDiscord | <Rebel> ohhh awesome |
19:30:41 | FromDiscord | <Rebel> much better |
19:41:07 | Zevv | |
19:41:08 | Zevv | . |
19:41:15 | Zevv | good |
19:49:37 | disruptek | this just doesn't make any sense. |
19:49:54 | Zevv | you're not doing life again, are you |
20:06:57 | disruptek | i often wish i wasn't. |
20:17:49 | FromGitter | <deech> I just learned about the `wrapnils` module which is pretty neat. Are there any plans for (or interest in) some equivalent which returns `None` instead of `default(T)`? |
20:29:28 | FromDiscord | <Elegant Beef> The point of wrapnils seems to be colescing nils, so it'd seem weird to return options |
20:31:25 | * | narimiran quit (Ping timeout: 264 seconds) |
20:31:55 | * | bouzu_ quit (Quit: Leaving) |
20:41:33 | Zevv | well, it kind of makes sense to be able to find out that a.b.c.d == None instead of 0 without having to check for a, b and c not being nil |
20:41:36 | FromGitter | <deech> Well, given eg. `?.x.y.z` I could use a version of `?` that short-circuited to a `None` of type `Option[(type z)]`. |
20:41:49 | FromGitter | <deech> What Zevv said. :) |
20:41:55 | Zevv | what deech said |
20:42:02 | Zevv | I say yay |
20:42:58 | Zevv | also because nim by defauld doesn't allow iffing on refs, you need to explicit do the `!= nil` thing every time |
20:45:52 | * | Trustable quit (Remote host closed the connection) |
20:52:25 | disruptek | sonuvabitch |
20:56:29 | disruptek | why does he hate me so? |
20:56:30 | disruptek | why? |
21:01:13 | * | Jesin quit (Quit: Leaving) |
21:04:35 | FromDiscord | <Varriount> Zevv: You mean, `if refValue:`? |
21:08:22 | * | vicfred joined #nim |
21:09:23 | disruptek | the whole compilation process is nothing but a side-effect. |
21:10:24 | * | Jesin joined #nim |
21:11:04 | * | thomasross joined #nim |
21:40:55 | * | vicfred quit (Quit: Leaving) |
22:08:24 | * | solitudesf quit (Ping timeout: 265 seconds) |
22:11:07 | * | noonien quit (Quit: Connection closed for inactivity) |
22:13:25 | * | Kaivo quit (Ping timeout: 264 seconds) |
22:15:44 | * | Kaivo joined #nim |
22:20:13 | * | dddddd_ joined #nim |
22:22:11 | * | dddddd quit (Ping timeout: 240 seconds) |
22:23:30 | * | dddddd__ joined #nim |
22:25:25 | * | dddddd_ quit (Ping timeout: 240 seconds) |
22:26:02 | FromDiscord | <dk> > I just learned about the `wrapnils` module which is pretty neat. Are there any plans for (or interest in) some equivalent which returns `None` instead of `default(T)`?↵@deech[Gitter]#0000 ↵Well, you can copy wrapnils's code and replace `default(T)` with `none(T)` there |
22:26:12 | * | dddddd_ joined #nim |
22:28:35 | * | dddddd__ quit (Ping timeout: 240 seconds) |
22:29:24 | * | dddddd__ joined #nim |
22:30:19 | * | MyMind joined #nim |
22:30:59 | * | Sembei quit (Ping timeout: 240 seconds) |
22:31:45 | * | dddddd_ quit (Ping timeout: 240 seconds) |
22:34:53 | * | abm quit (Quit: Leaving) |
22:40:24 | * | rockcavera joined #nim |
22:43:03 | * | hnOsmium0001 quit (Read error: Connection reset by peer) |
22:43:39 | * | dddddd_ joined #nim |
22:46:11 | * | dddddd__ quit (Ping timeout: 240 seconds) |
22:51:51 | FromDiscord | <Rika> https://github.com/PMunch/nim-optionsutils |
22:52:11 | disruptek | what the hell does that have to do with balls? |
22:55:05 | * | hnOsmium0001 joined #nim |
23:12:51 | * | lritter quit (Quit: Leaving) |
23:22:26 | * | vicfred joined #nim |
23:30:05 | FromDiscord | <Elegant Beef> @Rika why'd you have to show me that, it made me write a macro 😛 https://media.discordapp.net/attachments/371759389889003532/745424304920985650/unknown.png |
23:31:16 | FromDiscord | <Elegant Beef> Now the question is does Pmunch want something like that in his utils 😄 |
23:45:49 | * | krux02_ joined #nim |
23:46:58 | * | rockcavera quit (Remote host closed the connection) |
23:47:29 | * | rockcavera joined #nim |
23:48:42 | * | krux02 quit (Ping timeout: 260 seconds) |
23:57:59 | * | Zectbumo quit (Remote host closed the connection) |
23:59:14 | * | Zectbumo joined #nim |