00:00:30 | FromDiscord | <Elegantbeef> Now if only we could make the compiler report error messages with the untransformed code |
00:01:53 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U3h |
00:02:04 | FromDiscord | <huantian> wonder if something like that would work for strfmt too |
00:02:19 | FromDiscord | <huantian> though I guess that's not actualy the problem with stfmt erros |
00:02:50 | FromDiscord | <biz> https://media.discordapp.net/attachments/371759389889003532/959603781430046820/unknown.png |
00:02:59 | FromDiscord | <biz> nice |
00:03:15 | FromDiscord | <Elegantbeef> I wonder if we can somehow fake this huan 😛 |
00:03:42 | * | yoyojambo quit (Quit: Leaving) |
00:04:02 | * | yoyojambo joined #nim |
00:04:28 | FromDiscord | <biz> @dyno |
00:04:52 | * | yoyojambo quit (Client Quit) |
00:05:05 | * | yoyojambo joined #nim |
00:08:46 | FromDiscord | <demotomohiro> 'discard' and 'discord' are looks similar. |
00:11:38 | FromDiscord | <Elegantbeef> Any ideas how we can force the code the programmer typed appear in the error message without compiler support and rewriting macros 😛 |
00:13:58 | FromDiscord | <biz> tbh |
00:14:03 | FromDiscord | <biz> i think my code is good looking |
00:14:11 | FromDiscord | <biz> sent a code paste, see https://play.nim-lang.org/#ix=3U3l |
00:15:12 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U3m |
00:20:47 | * | lumo_e quit (Quit: Quit) |
00:29:50 | FromDiscord | <slymilano> This is very interesting, with no significant code changes my binaries are much smaller than before. I don't know if it's Nim improvements or Prologue package improvements. 1.09MB before to 785KB now. Nim 1.3.x to 1.64 now. |
00:29:59 | FromDiscord | <slymilano> https://github.com/sergiotapia/torrentinim/releases?page=1 |
00:30:32 | FromDiscord | <Elegantbeef> You were using `1.3.X` as a proper build ? 😛 |
00:30:49 | FromDiscord | <Rika> odd minor versions are development versions |
00:30:54 | FromDiscord | <Rika> theyre not meant for stable use |
00:31:03 | FromDiscord | <Elegantbeef> Have you changed the GC you're using? |
00:31:21 | FromDiscord | <Elegantbeef> odd minor/patch are devel versions |
00:31:58 | FromDiscord | <slymilano> No, I only updated Nim to latest and Prologue to latest after a 10 month hiatus. |
00:32:31 | FromDiscord | <Elegantbeef> Ah might just be smarter code gen t hen |
00:32:31 | FromDiscord | <slymilano> Hold up can't tell if you're joking or not. I shouldn't be using 1.6.4? I should be using 1.6.0? |
00:32:49 | FromDiscord | <Elegantbeef> You should be using 1.6.4 |
00:32:51 | FromDiscord | <Elegantbeef> You shouldnt have been using 1.3.x when 1.4 released |
00:33:19 | FromDiscord | <Elegantbeef> Odd `1.x.y` x/y in are devel builds |
00:33:53 | FromDiscord | <slymilano> I see good to know ty! |
00:34:10 | FromDiscord | <Elegantbeef> If you want it even smaller consider `--gc:arc` or `--gc:orc` if you have cyclic data types |
00:34:51 | FromDiscord | <biz> what is `%` |
00:34:52 | FromDiscord | <biz> ? |
00:35:05 | FromDiscord | <biz> https://media.discordapp.net/attachments/371759389889003532/959611894484852766/unknown.png |
00:35:12 | FromDiscord | <Elegantbeef> The dumb choice of `toJson` |
00:35:24 | FromDiscord | <slymilano> The only choice I use for toJson lmao so what should I use that's better? |
00:35:39 | FromDiscord | <Elegantbeef> Nah it's not you it's the library |
00:35:44 | FromDiscord | <Elegantbeef> Arbitrary unreadable operators suck |
00:35:49 | FromDiscord | <Elegantbeef> it should've been named `toJson` |
00:35:53 | FromDiscord | <slymilano> 100% agreed |
00:36:06 | FromDiscord | <Elegantbeef> Nim 2.0 when |
00:36:31 | * | Jjp137 quit (Read error: Connection reset by peer) |
00:37:23 | FromDiscord | <biz> In reply to @Elegantbeef "The dumb choice of": is this a natural nim |
00:37:24 | FromDiscord | <biz> thing |
00:37:28 | FromDiscord | <enthus1ast> every time i write $ %\ it feels like i swear to the compiler to give me a json string \:) |
00:37:39 | * | Jjp137 joined #nim |
00:37:41 | FromDiscord | <Elegantbeef> "natural nim"? |
00:37:50 | FromDiscord | <biz> like without any necessary imports |
00:37:55 | FromDiscord | <Elegantbeef> It's apart of the nim stdlib if that's what you mean, a vast majority of Nim is implement in user space |
00:37:57 | FromDiscord | <Elegantbeef> No it's not |
00:38:25 | FromDiscord | <Elegantbeef> Only a few modules are imported automagically though `system.nim` like `io` for instance |
00:39:42 | FromDiscord | <biz> so |
00:39:53 | FromDiscord | <biz> do i import something? |
00:39:57 | FromDiscord | <biz> in the example, they only import oids |
00:40:00 | FromDiscord | <biz> and their package's stuff |
00:40:34 | FromDiscord | <slymilano> Go `%myJsonVariable` |
00:41:02 | FromDiscord | <slymilano> Is this `%` in strutils or strformat - I can't remember. Try importing both |
00:41:41 | FromDiscord | <Elegantbeef> If you do try arc/orc do let me know how small it gets↵(@slymilano) |
00:42:00 | FromDiscord | <Elegantbeef> You can export modules |
00:42:03 | * | kayabaNerve quit (Ping timeout: 260 seconds) |
00:42:05 | FromDiscord | <Elegantbeef> So they probably export the json module |
00:42:13 | FromDiscord | <Elegantbeef> if they dont you do `import json` |
00:42:58 | FromDiscord | <Elegantbeef> `%` for string templates is in strutils, unary `%` is in json |
00:44:49 | nrds | <Prestige99> I have a hybrid nimble package I'm creating, I want to create a file that will be the executable, but not be the "main" file of the library. Is there a way to do this? |
00:45:13 | FromDiscord | <Elegantbeef> Look at picostdlib or nico |
00:45:36 | FromDiscord | <Rika> In reply to @Elegantbeef "if they dont you": smh what happened to `import std/json` |
00:46:05 | FromDiscord | <Elegantbeef> Shit i messed up, we have to go back marty |
00:46:40 | FromDiscord | <biz> what would be a good way to create an event handler? |
00:46:52 | FromDiscord | <biz> you have to pass a specific name to the events thing i believe |
00:47:06 | FromDiscord | <biz> unless it checks parameters? |
00:47:08 | FromDiscord | <biz> 🤔 |
00:47:12 | FromDiscord | <Rika> wdym? |
00:47:27 | FromDiscord | <biz> sent a code paste, see https://play.nim-lang.org/#ix=3U3q |
00:47:31 | FromDiscord | <biz> are you able to check params of a func in nim? |
00:47:35 | FromDiscord | <biz> similar to golang? |
00:47:36 | FromDiscord | <Rika> ""check""??? |
00:47:43 | FromDiscord | <biz> basically see the param types |
00:47:45 | FromDiscord | <biz> of that function |
00:47:50 | FromDiscord | <biz> and determine what event it is |
00:48:04 | FromDiscord | <Rika> i am really confused, i have no idea what you mean |
00:48:10 | FromDiscord | <biz> so in discordgo |
00:48:17 | FromDiscord | <biz> wait |
00:48:18 | FromDiscord | <biz> im go nna test |
00:48:19 | FromDiscord | <biz> something |
00:48:23 | FromDiscord | <Elegantbeef> https://github.com/GaryM-exkage/GDGW-Maverick-Bot/blob/master/src/nimcordbot/command/parsetest.nim personally i like my command handler |
00:48:43 | FromDiscord | <Rika> why is it like that what |
00:48:47 | FromDiscord | <Rika> lmao thats kinda weird |
00:48:52 | FromDiscord | <biz> for discordgo? |
00:48:55 | FromDiscord | <biz> also yea i was right u have to give a name |
00:49:03 | FromDiscord | <biz> In reply to @Rika "lmao thats kinda weird": well |
00:49:05 | FromDiscord | <biz> its flexible |
00:49:06 | FromDiscord | <Rika> not you |
00:49:08 | FromDiscord | <biz> oh |
00:49:08 | FromDiscord | <Rika> beef |
00:49:22 | nrds | <Prestige99> hm so they just excluded srcDir... weird |
00:49:58 | FromDiscord | <Elegantbeef> Why is it like what? |
00:51:44 | FromDiscord | <Elegantbeef> I guess with slash commands that's redundant |
00:52:15 | nrds | <Prestige99> I guess the answer is to have an "incorrect" nimble project structure, lol |
00:52:31 | FromDiscord | <Elegantbeef> Mine isnt incorrect |
00:53:00 | FromDiscord | <biz> what is "\` \`" |
00:53:01 | FromDiscord | <biz> like |
00:53:04 | FromDiscord | <biz> \`==\` |
00:53:10 | FromDiscord | <biz> what does this do |
00:53:22 | nrds | <Prestige99> oh, well nico's is. I'll check out yours next |
00:54:17 | nrds | <Prestige99> you lie beef :P "Error: Package 'picostdlib' has an incorrect structure." |
00:54:23 | FromDiscord | <Rika> In reply to @biz "what is "\` ": stropping |
00:54:27 | FromDiscord | <biz> ? |
00:54:31 | FromDiscord | <Rika> for defining operators |
00:54:38 | FromDiscord | <biz> operators i see |
00:54:42 | FromDiscord | <Rika> where the name consists of symbols only |
00:54:46 | FromDiscord | <Rika> sometimes |
00:55:07 | FromDiscord | <biz> i see |
00:55:14 | FromDiscord | <biz> one more question |
00:55:35 | FromDiscord | <biz> for objects |
00:55:37 | FromDiscord | <biz> can you do |
00:55:43 | FromDiscord | <biz> `<object>["property name"]`? |
00:57:15 | FromDiscord | <Elegantbeef> grave around identifiers is lexical stropping which overrides the nim's parser |
00:57:36 | FromDiscord | <Elegantbeef> https://nim-lang.org/docs/manual.html#lexical-analysis-keywords-as-identifiers |
00:58:08 | FromDiscord | <Elegantbeef> The incorrect structure prestige is due to the templates |
00:58:19 | FromDiscord | <Elegantbeef> if you learned to read you'd have seen that |
01:08:17 | FromDiscord | <biz> is tehre a way to import |
01:08:20 | FromDiscord | <biz> not-at-top-level |
01:08:30 | FromDiscord | <Elegantbeef> No |
01:08:30 | FromDiscord | <biz> or something similar to require |
01:08:32 | FromDiscord | <biz> ? |
01:08:53 | FromDiscord | <Elegantbeef> You can import later in the file |
01:08:54 | FromDiscord | <biz> i need the return values of a file |
01:08:58 | FromDiscord | <Elegantbeef> You dont have to import at the top though it's convention |
01:09:05 | FromDiscord | <Elegantbeef> "return values" |
01:09:12 | FromDiscord | <biz> yes reutrn values |
01:09:17 | FromDiscord | <biz> i need a function returned from a file |
01:09:19 | FromDiscord | <biz> im using it for a handler |
01:09:23 | FromDiscord | <biz> unless there snaother way to |
01:09:23 | FromDiscord | <Elegantbeef> Modules dont have return values |
01:09:24 | FromDiscord | <biz> load code |
01:09:31 | FromDiscord | <biz> In reply to @Elegantbeef "Modules dont have return": you get my point |
01:09:36 | FromDiscord | <biz> from a file, exported values |
01:09:54 | FromDiscord | <Elegantbeef> then do `var myProc = myModule.myOtherProc` |
01:10:03 | FromDiscord | <Elegantbeef> replace the left hand for whatever you're doing |
01:10:15 | FromDiscord | <biz> myModule |
01:10:23 | FromDiscord | <biz> in a literal sense? |
01:10:57 | FromDiscord | <biz> well |
01:10:59 | FromDiscord | <biz> whatever that means |
01:11:00 | FromDiscord | <biz> ill figure it out |
01:11:01 | FromDiscord | <Elegantbeef> `myModule` being the module you want to get the procedure from if it's ambiguous otherwise just `myOtherProc` |
01:11:12 | FromDiscord | <biz> i see |
01:11:18 | FromDiscord | <Elegantbeef> Perhaps ask the actual question instead of making up terms |
01:11:26 | nrds | <Prestige99> Elegantbeef it's incorrect and you said it isn't lol |
01:11:26 | FromDiscord | <biz> im not from this community |
01:11:44 | FromDiscord | <Elegantbeef> It's incorrect due to the templates folder not due to having a hybrid package |
01:12:21 | FromDiscord | <Elegantbeef> You have a handler and want to access a procedure from another module |
01:12:29 | FromDiscord | <Elegantbeef> Import that module into the file the handler is created |
01:12:40 | FromDiscord | <biz> wiat wait |
01:12:42 | FromDiscord | <biz> i think i got it |
01:12:46 | FromDiscord | <biz> previously i had tried replit |
01:12:48 | FromDiscord | <biz> at school |
01:12:50 | FromDiscord | <biz> bc they blocked github |
01:12:54 | FromDiscord | <biz> and something went wrong with an idea |
01:12:57 | FromDiscord | <biz> so i was under false impressions |
01:12:58 | FromDiscord | <biz> brb |
01:13:40 | FromDiscord | <huantian> github and replit aren't like for the same thing?↵but out of curiosity what did you do? |
01:14:15 | FromDiscord | <biz> In reply to @huantian "github and replit aren't": Well previously id code on github to look at it at home |
01:14:21 | FromDiscord | <biz> but i was testing module importing |
01:14:25 | FromDiscord | <biz> since i was first-day-on-nim |
01:15:17 | * | ltriant quit (Ping timeout: 256 seconds) |
01:15:23 | FromDiscord | <biz> what would be a module in ur eyes |
01:15:37 | FromDiscord | <Elegantbeef> A file |
01:15:41 | FromDiscord | <biz> oh |
01:15:43 | FromDiscord | <biz> what if i want a folder |
01:15:45 | FromDiscord | <Elegantbeef> `myFile.nim` is a module |
01:15:48 | FromDiscord | <biz> but i want all of its returns |
01:15:51 | FromDiscord | <Elegantbeef> That's a folder |
01:15:55 | FromDiscord | <Elegantbeef> "it's returns" |
01:16:01 | FromDiscord | <biz> let me speak my lingo i didnt come from nim |
01:16:04 | FromDiscord | <Elegantbeef> You want all the submodules in a directory? |
01:16:08 | FromDiscord | <biz> basically |
01:16:15 | FromDiscord | <Elegantbeef> You need a macro in that instance |
01:16:23 | FromDiscord | <biz> nvm ill stick to my stuff |
01:16:28 | FromDiscord | <biz> 👼 |
01:16:44 | FromDiscord | <huantian> couldn't you have a file in the same folder as the folder with the same name, which imports and exports all the files?↵or does that not work |
01:16:46 | FromDiscord | <Elegantbeef> https://github.com/GaryM-exkage/GDGW-Maverick-Bot/blob/master/src/nimcordbot/utils.nim#L3-L21 an example of a macro |
01:16:59 | FromDiscord | <Elegantbeef> You can huan that's manual though |
01:17:15 | FromDiscord | <huantian> ah true |
01:17:32 | FromDiscord | <Elegantbeef> you can make `mycommands.nim` and have a folder `mycommands` then have `import myCommandA, myCommandB; export myCommandA, myCommandB` |
01:17:41 | FromDiscord | <biz> thats god awful |
01:17:51 | FromDiscord | <huantian> no it's just, normal? |
01:18:02 | FromDiscord | <biz> this bot will be evergrowing |
01:18:05 | FromDiscord | <huantian> like python you have to do that in your `init.py` for example |
01:18:08 | FromDiscord | <biz> id have to import at least 100 things |
01:18:10 | FromDiscord | <biz> in the future |
01:18:14 | FromDiscord | <Elegantbeef> Then write a macro |
01:18:18 | FromDiscord | <huantian> ^ |
01:18:18 | FromDiscord | <Elegantbeef> It takes 3 seconds |
01:18:29 | FromDiscord | <biz> ur macros are confusing, also |
01:18:31 | FromDiscord | <Elegantbeef> I gave you the basis already |
01:18:32 | FromDiscord | <biz> the naming |
01:18:34 | FromDiscord | <biz> is rather odd |
01:18:52 | FromDiscord | <Elegantbeef> Well then live with the manual importing until you learn macros |
01:18:56 | * | neurocyte86149 joined #nim |
01:19:12 | FromDiscord | <biz> well not the macor |
01:19:14 | FromDiscord | <biz> macro naming |
01:19:17 | FromDiscord | <biz> what is newNodeStim |
01:19:58 | FromDiscord | <huantian> I don't think that's a thing? |
01:20:18 | FromDiscord | <biz> newNimNode |
01:20:20 | FromDiscord | <biz> my dumb ass |
01:20:22 | FromDiscord | <biz> cannot read |
01:20:46 | FromDiscord | <biz> or newStmtList |
01:20:47 | * | neurocyte8614 quit (Ping timeout: 260 seconds) |
01:20:48 | * | neurocyte86149 is now known as neurocyte8614 |
01:22:49 | FromDiscord | <Elegantbeef> It's generating Nim code as you're new it's not really a wonderful thing to explain |
01:22:50 | FromDiscord | <Elegantbeef> Nim macros work on the AST, and if you dont know what AST is it's an ordeal |
01:22:50 | FromDiscord | <Elegantbeef> damn |
01:22:51 | FromDiscord | <huantian> hm matrix bridge dead? |
01:22:58 | FromDiscord | <huantian> there we go |
01:23:05 | FromDiscord | <enthus1ast> you can write macros real quick when you use parseStmt |
01:23:19 | FromDiscord | <Elegantbeef> parsestmt doesnt work for imports though |
01:23:39 | FromDiscord | <huantian> dang my april fools icon looks horrible here from the transparency not working |
01:24:03 | FromDiscord | <Elegantbeef> April fools like it's much different |
01:24:24 | FromDiscord | <biz> even if i wrote my own handler |
01:24:28 | FromDiscord | <biz> it wouldnt be much different from yours |
01:24:32 | FromDiscord | <biz> because.. well.. |
01:24:37 | FromDiscord | <biz> there doesnt seem to be any other solutions |
01:24:50 | FromDiscord | <Rika> What is happening I left to set up a media server |
01:25:04 | FromDiscord | <biz> nim only allows top lvl imports |
01:25:07 | FromDiscord | <Elegantbeef> Nim lacks entire directory import |
01:25:07 | FromDiscord | <biz> |
01:25:07 | FromDiscord | <Rika> Yes |
01:25:27 | FromDiscord | <Elegantbeef> How does having non top level imports solve anything here |
01:25:44 | FromDiscord | <Rika> I don’t know what your issue is |
01:25:45 | FromDiscord | <biz> youre allowed to use paths |
01:25:48 | FromDiscord | <biz> with importing |
01:25:56 | FromDiscord | <biz> that seems like the only issue stopping me |
01:26:05 | FromDiscord | <Rika> You can do so in Nim as well? |
01:26:10 | FromDiscord | <biz> I said that |
01:26:11 | FromDiscord | <biz> i meant |
01:26:16 | FromDiscord | <biz> top lvl import restriction |
01:26:17 | FromDiscord | <huantian> you don't want to use paths in importing? |
01:26:17 | FromDiscord | <biz> is my issue |
01:26:21 | FromDiscord | <Rika> Why |
01:26:24 | FromDiscord | <biz> i cant import anywhere inside the function |
01:26:26 | FromDiscord | <biz> i need to |
01:26:32 | FromDiscord | <Elegantbeef> No you dont |
01:26:34 | FromDiscord | <Rika> Why inside the function |
01:26:40 | FromDiscord | <biz> its the handler |
01:26:43 | FromDiscord | <Elegantbeef> Import top level and use the symbols inside |
01:26:55 | nrds | <Prestige99> anyway beef |
01:26:57 | FromDiscord | <Rika> What does that have to do with importing |
01:27:01 | nrds | <Prestige99> I don't think your package does what I was saying |
01:27:03 | FromDiscord | <biz> In reply to @Rika "What does that have": i need file data |
01:27:04 | FromDiscord | <Elegantbeef> Anyway prestige |
01:27:08 | FromDiscord | <biz> i wouldnt have predetermined names |
01:27:17 | FromDiscord | <biz> (edit) "data" => "exports" |
01:27:21 | FromDiscord | <Rika> You can’t arbitrarily import files at runtime |
01:27:27 | FromDiscord | <Rika> You must do it on compile time |
01:27:29 | FromDiscord | <Rika> Hence the macro |
01:27:30 | FromDiscord | <biz> sucks |
01:27:48 | FromDiscord | <Rika> There’s a different system for run time and it’s not nice |
01:28:05 | FromDiscord | <biz> if only nim had `requirw` |
01:28:08 | FromDiscord | <biz> (edit) "`requirw`" => "`require`" |
01:28:14 | FromDiscord | <Elegantbeef> Require doesnt chang anything |
01:28:15 | FromDiscord | <Rika> My implication, for those who know, is to abuse HCR or something |
01:28:16 | FromDiscord | <Elegantbeef> https://github.com/ire4ever1190/dimscmd |
01:28:22 | FromDiscord | <Elegantbeef> Also use that if you want a command handeler |
01:28:27 | FromDiscord | <biz> im going to reference that |
01:28:30 | FromDiscord | <biz> not use it |
01:28:31 | FromDiscord | <biz> hate cmd handlers |
01:28:34 | FromDiscord | <biz> that arent mine |
01:28:37 | FromDiscord | <huantian> though it hasn't been updated in a bit unfortunately |
01:28:38 | FromDiscord | <Rika> Ok |
01:29:14 | nrds | <Prestige99> eh maybe I'll just have like when defined(foo) in my file and have the content be completely different |
01:29:22 | nrds | <Prestige99> if I want it to be the executable instead of the library |
01:29:32 | FromDiscord | <huantian> I'm pretty sure just writing a macro will solve all your problems biz |
01:29:38 | FromDiscord | <Elegantbeef> What hasnt? |
01:29:49 | FromDiscord | <biz> In reply to @huantian "I'm pretty sure just": i dont want to use a solution |
01:29:53 | FromDiscord | <biz> elegantbeef has already created |
01:30:01 | FromDiscord | <Rika> Why |
01:30:03 | FromDiscord | <biz> well, in this manenr |
01:30:04 | FromDiscord | <biz> manner |
01:30:09 | FromDiscord | <biz> because i want to be createive |
01:30:11 | FromDiscord | <biz> creative |
01:30:11 | FromDiscord | <Rika> Then make it yourself |
01:30:15 | FromDiscord | <Rika> Then be creative |
01:30:22 | FromDiscord | <Elegantbeef> Creatively rewrite it |
01:30:40 | FromDiscord | <Rika> We’ll tell you if something is or isn’t possible if you need to know |
01:31:31 | FromDiscord | <enthus1ast> whats the problem btw? Have a chatbot be extendable? |
01:31:39 | FromDiscord | <Elegantbeef> Automatically import submodules |
01:31:51 | FromDiscord | <huantian> And I assume generate the code to register it to the command handler |
01:32:04 | FromDiscord | <Elegantbeef> The implication being the modules dont do that |
01:32:35 | FromDiscord | <Elegantbeef> I wonder if the compiler `--importFile` could be abused here |
01:32:41 | FromDiscord | <Elegantbeef> Doubt it'd happily play |
01:32:47 | FromDiscord | <huantian> ehh probably not worth it |
01:32:54 | FromDiscord | <Rika> Kinda strange dude ngl |
01:33:25 | FromDiscord | <Elegantbeef> How did you know my highschool nickname?!↵(@Rika) |
01:33:36 | FromDiscord | <Rika> Because it never changed |
01:34:42 | FromDiscord | <enthus1ast> they called me Ren Dhark back then.... |
01:34:54 | FromDiscord | <biz> what is |
01:34:55 | FromDiscord | <biz> nnkIdent |
01:35:00 | FromDiscord | <biz> i know what StmtList is now |
01:35:02 | FromDiscord | <enthus1ast> @biz\: do you know all the modules on compiletime? |
01:35:08 | FromDiscord | <huantian> nim node kind Identifier |
01:35:20 | FromDiscord | <biz> ill know the file names, but i wish for autonomy |
01:35:28 | FromDiscord | <biz> id rather not import tens to hundreds |
01:35:32 | FromDiscord | <biz> of files |
01:35:34 | FromDiscord | <Elegantbeef> Enthus i had to google that and it doesnt translate to english 😛 |
01:35:54 | FromDiscord | <huantian> I think the word you're looking for is automation/automated?↵(@biz) |
01:36:11 | FromDiscord | <biz> sorry my brain is scrambled |
01:36:17 | FromDiscord | <biz> im focused on a lot at once lmfaoo |
01:36:18 | FromDiscord | <huantian> no it's fine words are hard |
01:36:25 | FromDiscord | <enthus1ast> its like the german perry rhodan ;) |
01:36:47 | FromDiscord | <Elegantbeef> You say that like it'd be any more clear |
01:36:51 | FromDiscord | <Elegantbeef> Also that's german aswell |
01:37:24 | FromDiscord | <enthus1ast> oh really \:D did not know that |
01:37:53 | FromDiscord | <Elegantbeef> I didnt know either of those so I now know some german space opera stuff |
01:37:59 | FromDiscord | <enthus1ast> @biz\: when you know the stuff you gonna need at compile time, macros are the way to go |
01:38:14 | FromDiscord | <Elegantbeef> Well given they're importing modules that's kinda required |
01:38:54 | FromDiscord | <enthus1ast> yeah, in small "dime novel" (is this an englisch word who knows) |
01:39:18 | FromDiscord | <Elegantbeef> comic is probably the english equivlent |
01:39:54 | FromDiscord | <Elegantbeef> It does seem to be an english phrase, so congrats! 😛 |
01:40:15 | FromDiscord | <Elegantbeef> Also hopefully it's clear why i closed your post TMWN |
01:41:10 | FromDiscord | <enthus1ast> yeah i was working on a more in depth article, but got lost in nitty gritty, i think i must overhaul the post |
01:41:32 | FromDiscord | <Elegantbeef> The guest post doesnt go there it get's PR'd to the official repo btw |
01:42:21 | FromDiscord | <Elegantbeef> Prestige cant you just do `when isMainModule`? |
01:42:57 | FromDiscord | <biz> what is ident |
01:43:10 | FromDiscord | <biz> identifer? |
01:43:11 | FromDiscord | <biz> indeifier |
01:43:12 | FromDiscord | <biz> omg |
01:43:17 | FromDiscord | <Elegantbeef> Identifier |
01:43:25 | FromDiscord | <Elegantbeef> It's any written name in nim |
01:43:31 | * | ltriant joined #nim |
01:43:40 | nrds | <Prestige99> hmm maybe. Would be nice if I could just have it in a separate file though |
01:44:30 | FromDiscord | <biz> im not exactly rewriting yours |
01:44:30 | FromDiscord | <biz> but |
01:44:34 | FromDiscord | <biz> im making it |
01:44:36 | FromDiscord | <Elegantbeef> sent a code paste, see https://paste.rs/Ni2 |
01:44:38 | FromDiscord | <biz> simpler |
01:44:39 | FromDiscord | <biz> and more clear |
01:44:41 | FromDiscord | <biz> for my proj |
01:44:55 | FromDiscord | <Elegantbeef> Well take this it might help a tinge https://dev.to/beef331/demystification-of-macros-in-nim-13n8 |
01:45:10 | FromDiscord | <Elegantbeef> https://nim-lang.org/docs/tut3.html |
01:45:31 | FromDiscord | <Elegantbeef> Or prestige you can use my least favourite `include` |
01:45:41 | nrds | <Prestige99> beef: But in that case, if someone used my library, wouldn't it also bring in the file it doesn't need (the runnable program)? |
01:45:57 | FromDiscord | <Elegantbeef> Why would it? |
01:45:59 | FromDiscord | <enthus1ast> just tried import seems to work in parseStmt |
01:46:07 | FromDiscord | <biz> what is Infix |
01:46:09 | FromDiscord | <biz> and Prefix |
01:46:10 | FromDiscord | <biz> for nnk |
01:46:27 | FromDiscord | <Elegantbeef> `+someWord` is prefix `someWord` is post fix and `a + b` is infix |
01:46:42 | FromDiscord | <Elegantbeef> Enthus was that in the same module you called it from? |
01:46:55 | FromDiscord | <enthus1ast> yes |
01:47:05 | FromDiscord | <Elegantbeef> Use parse stmt in seperate modules and you'll get the error |
01:47:10 | nrds | <Prestige99> Elegantbeef: Not sure how nimble works, assume it just pulls all the .nim files |
01:47:24 | FromDiscord | <Elegantbeef> Ok but that's how hybrrid works |
01:47:44 | FromDiscord | <Elegantbeef> It ships both the binary and the library |
01:47:45 | nrds | <Prestige99> maybe there's an option to exclude a file.. |
01:48:03 | FromDiscord | <Elegantbeef> How can you exclude the source files but have a binary? |
01:48:05 | FromDiscord | <biz> cant i just do |
01:48:11 | nrds | <Prestige99> yeah but in this case, the source code for the binary is not part of the library |
01:48:30 | FromDiscord | <Elegantbeef> I dont follow |
01:48:31 | FromDiscord | <biz> wait ok so |
01:48:32 | nrds | <Prestige99> maybe I should just read nimble's source cuz its docs are terrible |
01:48:38 | * | yiggityswaps joined #nim |
01:48:46 | FromDiscord | <Elegantbeef> You want the entry fiie for the library and the binary to be the same but only differ by import |
01:48:47 | FromDiscord | <biz> sent a code paste, see https://play.nim-lang.org/#ix=3U3y |
01:48:47 | FromDiscord | <biz> what does this give you |
01:49:02 | FromDiscord | <Elegantbeef> Jeez why did i use add |
01:49:08 | nrds | <Prestige99> I'd prefer they were different files |
01:49:09 | FromDiscord | <biz> seems |
01:49:11 | FromDiscord | <Elegantbeef> it's a prefix so it'd do `/command` |
01:49:11 | FromDiscord | <biz> unncessary |
01:49:12 | nrds | <Prestige99> but it seems that's not an option |
01:49:37 | FromDiscord | <Elegantbeef> yea it should ideally be `nnkPrefix.newNimNode(ident"/", ident"command")` |
01:50:04 | FromDiscord | <Elegantbeef> What do you mean that's not possible? |
01:50:05 | FromDiscord | <biz> lmao |
01:50:12 | FromDiscord | <biz> sent a code paste, see https://play.nim-lang.org/#ix=3U3z |
01:50:57 | * | yoyojambo quit (Ping timeout: 260 seconds) |
01:51:11 | nrds | <Prestige99> I don't know how to have an entry point for the library as one file, but have the binary's nim file be different, all while keeping a "proper" nimble package structure |
01:51:32 | FromDiscord | <biz> can you nnkInfix.newNImNode() |
01:51:38 | FromDiscord | <Elegantbeef> That macro generates `import command/[a, b, c, d.eee]` |
01:51:40 | FromDiscord | <Elegantbeef> Yes you can |
01:51:49 | FromDiscord | <Elegantbeef> Like i said that's ugly code |
01:52:21 | nrds | <Prestige99> Basically I want two files here https://github.com/avahe-kellenberger/shade/tree/master/src but nimble doesn't like it |
01:53:35 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U3B |
01:54:04 | FromDiscord | <biz> dang rewriting is super easy! |
01:54:08 | FromDiscord | <biz> totally did it by myself |
01:54:11 | FromDiscord | <biz> |
01:54:13 | FromDiscord | <Elegantbeef> Whoops second `"/"` should be `ident"/"` |
01:54:29 | FromDiscord | <Elegantbeef> I have 0 clue why i wrote it so ugly |
01:54:40 | FromDiscord | <Elegantbeef> The fuck did i have drain bamage |
01:54:52 | FromDiscord | <biz> what does |
01:54:53 | FromDiscord | <biz> `do` |
01:54:58 | FromDiscord | <biz> apply |
01:55:10 | FromDiscord | <Elegantbeef> do notation allows you to supply more arguments to the block call syntax |
01:55:27 | FromDiscord | <Elegantbeef> so it turns it into `newStmtlist(newTreeStuffHere, bracket)` |
01:55:53 | FromDiscord | <Rika> In reply to @Elegantbeef "The fuck did i": Hard to tell |
01:56:20 | FromDiscord | <biz> the new code is |
01:56:26 | FromDiscord | <biz> not on my level |
01:56:30 | FromDiscord | <biz> so |
01:56:31 | FromDiscord | <biz> im going to |
01:56:34 | FromDiscord | <biz> fix that |
01:56:36 | FromDiscord | <biz> for myself |
01:56:39 | FromDiscord | <biz> :444melodyblush: |
01:56:44 | FromDiscord | <Elegantbeef> "Hard to tell" fuck no it's pretty clear |
01:56:59 | FromDiscord | <biz> fuck yes |
01:57:16 | FromDiscord | <biz> as if i know what the fuck newTree is commonly used in |
01:57:43 | FromDiscord | <Elegantbeef> It's making a new AST tree, if you havent looked at the macro writeups i provided i highly suggest you do |
01:57:52 | FromDiscord | <Elegantbeef> it atleast shows you `dumptree` which will make more sense to you |
01:58:00 | FromDiscord | <Rika> In reply to @Elegantbeef ""Hard to tell" fuck": I meant that it’s hard to distinguish. |
01:58:08 | FromDiscord | <Elegantbeef> Speaking of macros @Girvo how goes yours |
01:59:47 | FromDiscord | <biz> im |
01:59:49 | FromDiscord | <biz> looking at ur code |
01:59:54 | FromDiscord | <biz> and github ruined this formatting so bad |
01:59:57 | FromDiscord | <biz> cuz wtf is this |
02:00:00 | FromDiscord | <biz> sent a code paste, see https://play.nim-lang.org/#ix=3U3C |
02:00:08 | FromDiscord | <Elegantbeef> No that was me |
02:00:13 | FromDiscord | <biz> yea u have brain damage |
02:00:14 | FromDiscord | <Elegantbeef> Using lispy code so made it clear |
02:00:16 | FromDiscord | <biz> no |
02:00:44 | FromDiscord | <Elegantbeef> Yea i fucked up the () placement |
02:00:51 | FromDiscord | <Elegantbeef> So the do point was wrong 😄 |
02:01:22 | FromDiscord | <Elegantbeef> sent a code paste, see https://paste.rs/z6A |
02:01:32 | FromDiscord | <Elegantbeef> That's mostly proper minus the incorrect indent on `do` |
02:02:15 | FromDiscord | <Elegantbeef> should be indented with the first nnkInfix |
02:14:47 | * | arkurious quit (Quit: Leaving) |
02:16:45 | * | kayabaNerve joined #nim |
02:23:35 | FromDiscord | <biz> elegant |
02:23:39 | FromDiscord | <biz> i was looking thru ur code |
02:23:46 | FromDiscord | <biz> and i was curious as to where commandTable is located? |
02:23:47 | FromDiscord | <biz> 🤔 |
02:24:04 | FromDiscord | <biz> actually i see it now |
02:42:08 | FromDiscord | <biz> https://github.com/nombiz/nmc |
02:42:14 | FromDiscord | <biz> i decided to do it manually but the old way i was doing |
02:42:20 | FromDiscord | <biz> not with imports |
02:42:27 | FromDiscord | <biz> i find this much more user friendly and i understand everything more |
02:42:35 | FromDiscord | <biz> id rather stick with this and then move to a higher level in the future |
02:44:35 | FromDiscord | <Rika> whichever you think is best, really |
02:44:42 | FromDiscord | <biz> im |
02:44:45 | FromDiscord | <biz> at least proud of myself |
02:44:50 | FromDiscord | <biz> for mustering up that while |
02:44:56 | FromDiscord | <biz> only having experienced a day of nim |
02:45:08 | FromDiscord | <Rika> sounds good to me |
02:45:16 | FromDiscord | <Rika> i think i took my time learning nim |
02:45:27 | FromDiscord | <biz> im slowly adapting |
02:45:35 | FromDiscord | <biz> ALSO why does ur name seem so familiar |
02:45:39 | FromDiscord | <biz> were u a powercord member |
02:45:42 | FromDiscord | <Rika> because it is a common name |
02:45:43 | FromDiscord | <Rika> no |
02:45:47 | FromDiscord | <biz> o |
02:45:52 | FromDiscord | <biz> i knew a rika in powercord |
02:45:54 | FromDiscord | <Rika> i was active in the betterdiscord days |
02:46:01 | FromDiscord | <Rika> even more in the bandagedbd days |
02:46:02 | FromDiscord | <biz> oh |
02:46:07 | FromDiscord | <biz> lmao |
02:46:10 | FromDiscord | <Rika> now not really no |
02:46:23 | FromDiscord | <Rika> theres a lot of Rikas |
03:07:27 | * | yoyojambo joined #nim |
03:11:54 | yoyojambo | can I set a main module in .nimble files? like the file that will automatically be built when running 'nimble build |
03:12:15 | yoyojambo | *'nimble build' |
03:12:19 | FromDiscord | <Elegantbeef> `bin = @["myFile.niim"]` |
03:12:38 | FromDiscord | <Hamid_Bluri> good mornin elegant beef |
03:12:49 | FromDiscord | <Elegantbeef> Good evening |
03:13:24 | yoyojambo | ahh thanks man, I didn't get it when I read it in the Nimble reference but I get it now |
03:13:36 | FromDiscord | <huantian> nimble docs are long |
03:14:57 | FromDiscord | <Elegantbeef> They might be long, but i cant read! |
03:15:08 | yoyojambo | Is there another way to see the docs besides the git repo? |
03:15:20 | FromDiscord | <huantian> reading? effort? sounds like work |
03:15:28 | FromDiscord | <Elegantbeef> Not that i know, man pages are a myth according to nim afaict |
03:15:47 | yoyojambo | thanks |
03:15:53 | FromDiscord | <huantian> so are info pages 😔 |
03:23:39 | nrds | <Prestige99> Is there a way with zippy to provide a directory to compress? |
03:24:34 | FromDiscord | <Elegantbeef> `compress "myDir"` afaik |
03:25:02 | nrds | <Prestige99> it just compressed the text "myDir" lol |
03:27:17 | * | Gustavo6046 quit (Quit: Gustavo6046) |
03:27:51 | nrds | <Prestige99> maybe it's just not supported. Docs are very lackluster though |
03:28:04 | FromDiscord | <Elegantbeef> I could've swore it was supported |
03:28:04 | FromDiscord | <huantian> it has to be something in zippy/ziparchives |
03:28:17 | FromDiscord | <Elegantbeef> `createZipArchive` |
03:28:34 | FromDiscord | <Elegantbeef> `createTarball` in the `v1` modules |
03:28:58 | FromDiscord | <huantian> should also be exported by non-v1 version too |
03:29:21 | nrds | <Prestige99> beautiful |
03:29:42 | FromDiscord | <huantian> Why does my name have `@huantian:matrix.org` next to it now |
03:30:05 | FromDiscord | <Elegantbeef> I wish it was just `createArchive(string, ZipPath or TarballPath)` |
03:30:19 | FromDiscord | <Elegantbeef> Distincts \> manually naming the procedure 😛 |
03:30:26 | nrds | <Prestige99> Thanks for finding that |
03:30:47 | FromDiscord | <Elegantbeef> No clue huan |
03:33:22 | FromDiscord | <huantian> hm is zippy/ziparchive even documented? |
03:33:37 | FromDiscord | <Elegantbeef> No clue i used it forever ago for my Unity buiild system |
03:34:02 | nrds | <Prestige99> None of it is documented |
03:34:21 | FromDiscord | <huantian> well I guess there's definitly docstrings |
03:34:31 | FromDiscord | <huantian> but it doesn't seem like it's been docgened |
03:35:42 | FromDiscord | <Elegantbeef> Might be nimdocs not rebuilding for whatever reason |
03:36:16 | FromDiscord | <Elegantbeef> > Made with Nim. Generated\: 2022-03-19 22\:51\:12 UTC |
03:36:20 | FromDiscord | <Elegantbeef> Hmm seems it should be here |
03:39:52 | * | dtomato quit (Remote host closed the connection) |
03:40:09 | * | dtomato joined #nim |
03:40:09 | * | dtomato quit (Read error: Connection reset by peer) |
03:40:25 | * | dtomato joined #nim |
03:40:25 | * | dtomato quit (Read error: Connection reset by peer) |
03:40:41 | * | dtomato joined #nim |
03:40:41 | * | dtomato quit (Remote host closed the connection) |
03:40:57 | * | dtomato joined #nim |
03:40:58 | * | dtomato quit (Read error: Connection reset by peer) |
03:41:13 | * | dtomato joined #nim |
03:41:13 | * | dtomato quit (Read error: Connection reset by peer) |
03:41:29 | * | dtomato joined #nim |
03:41:29 | * | dtomato quit (Read error: Connection reset by peer) |
03:41:45 | * | dtomato joined #nim |
03:41:45 | * | dtomato quit (Read error: Connection reset by peer) |
03:42:01 | * | dtomato joined #nim |
03:42:01 | * | dtomato quit (Remote host closed the connection) |
03:42:16 | * | dtomato joined #nim |
03:42:16 | * | dtomato quit (Remote host closed the connection) |
03:42:32 | * | dtomato joined #nim |
03:42:32 | * | dtomato quit (Read error: Connection reset by peer) |
03:42:47 | * | dtomato joined #nim |
03:42:47 | * | dtomato quit (Remote host closed the connection) |
03:43:02 | * | dtomato joined #nim |
03:43:02 | * | dtomato quit (Remote host closed the connection) |
03:43:18 | * | dtomato joined #nim |
03:43:18 | * | dtomato quit (Read error: Connection reset by peer) |
03:43:34 | * | dtomato joined #nim |
03:43:34 | * | dtomato quit (Remote host closed the connection) |
03:43:49 | * | dtomato joined #nim |
03:43:49 | * | dtomato quit (Remote host closed the connection) |
03:44:05 | * | dtomato joined #nim |
03:44:06 | * | dtomato quit (Remote host closed the connection) |
03:44:21 | * | dtomato joined #nim |
03:44:22 | * | dtomato quit (Remote host closed the connection) |
03:44:38 | * | dtomato joined #nim |
03:44:39 | * | dtomato quit (Read error: Connection reset by peer) |
03:44:54 | * | dtomato joined #nim |
03:44:54 | * | dtomato quit (Remote host closed the connection) |
03:45:11 | * | dtomato joined #nim |
03:45:12 | * | dtomato quit (Remote host closed the connection) |
03:45:27 | * | dtomato joined #nim |
03:45:27 | * | dtomato quit (Remote host closed the connection) |
03:45:42 | * | dtomato joined #nim |
03:45:42 | * | dtomato quit (Remote host closed the connection) |
03:45:57 | * | dtomato joined #nim |
03:45:57 | * | dtomato quit (Remote host closed the connection) |
03:46:13 | * | dtomato joined #nim |
03:46:13 | * | dtomato quit (Read error: Connection reset by peer) |
03:46:28 | * | dtomato joined #nim |
03:46:28 | * | dtomato quit (Remote host closed the connection) |
03:46:44 | * | dtomato joined #nim |
03:46:44 | * | dtomato quit (Remote host closed the connection) |
03:46:59 | * | dtomato joined #nim |
03:46:59 | * | dtomato quit (Remote host closed the connection) |
03:47:15 | * | dtomato joined #nim |
03:47:15 | * | dtomato quit (Remote host closed the connection) |
03:47:32 | * | dtomato joined #nim |
03:47:32 | * | dtomato quit (Read error: Connection reset by peer) |
03:47:48 | * | dtomato joined #nim |
03:47:49 | * | dtomato quit (Remote host closed the connection) |
03:48:05 | * | dtomato joined #nim |
03:48:06 | * | dtomato quit (Remote host closed the connection) |
03:48:22 | * | dtomato joined #nim |
03:48:23 | * | dtomato quit (Remote host closed the connection) |
03:48:38 | * | dtomato joined #nim |
03:48:38 | * | dtomato quit (Remote host closed the connection) |
03:48:54 | * | dtomato joined #nim |
03:48:55 | * | dtomato quit (Remote host closed the connection) |
03:49:10 | * | dtomato joined #nim |
03:49:10 | * | dtomato quit (Remote host closed the connection) |
03:49:26 | * | dtomato joined #nim |
03:49:26 | * | dtomato quit (Remote host closed the connection) |
03:49:41 | * | dtomato joined #nim |
03:49:41 | * | dtomato quit (Remote host closed the connection) |
03:49:57 | * | dtomato joined #nim |
03:49:57 | * | dtomato quit (Read error: Connection reset by peer) |
03:50:12 | * | dtomato joined #nim |
03:50:12 | * | dtomato quit (Remote host closed the connection) |
03:50:27 | * | dtomato joined #nim |
03:50:27 | * | dtomato quit (Remote host closed the connection) |
03:50:42 | * | dtomato joined #nim |
03:50:42 | * | dtomato quit (Remote host closed the connection) |
03:50:58 | * | dtomato joined #nim |
03:50:58 | * | dtomato quit (Remote host closed the connection) |
03:51:14 | * | dtomato joined #nim |
03:51:14 | * | dtomato quit (Read error: Connection reset by peer) |
03:51:30 | * | dtomato joined #nim |
03:51:30 | * | dtomato quit (Remote host closed the connection) |
03:51:46 | * | dtomato joined #nim |
03:51:46 | * | dtomato quit (Read error: Connection reset by peer) |
03:52:02 | * | dtomato joined #nim |
03:52:03 | * | dtomato quit (Read error: Connection reset by peer) |
03:52:19 | * | dtomato joined #nim |
03:52:19 | * | dtomato quit (Read error: Connection reset by peer) |
03:52:34 | * | dtomato joined #nim |
03:52:34 | * | dtomato quit (Read error: Connection reset by peer) |
03:52:50 | * | dtomato joined #nim |
03:52:50 | * | dtomato quit (Read error: Connection reset by peer) |
03:53:06 | * | dtomato joined #nim |
03:53:07 | * | dtomato quit (Remote host closed the connection) |
03:53:23 | * | dtomato joined #nim |
03:53:23 | * | dtomato quit (Read error: Connection reset by peer) |
03:53:39 | * | dtomato joined #nim |
03:53:39 | * | dtomato quit (Read error: Connection reset by peer) |
03:53:55 | * | dtomato joined #nim |
03:53:56 | * | dtomato quit (Remote host closed the connection) |
03:54:12 | * | dtomato joined #nim |
03:54:13 | * | dtomato quit (Remote host closed the connection) |
03:54:29 | * | dtomato joined #nim |
03:54:29 | * | dtomato quit (Read error: Connection reset by peer) |
03:54:46 | * | dtomato joined #nim |
03:54:47 | * | dtomato quit (Remote host closed the connection) |
03:55:03 | * | dtomato joined #nim |
03:55:04 | * | dtomato quit (Remote host closed the connection) |
03:55:20 | * | dtomato joined #nim |
04:08:55 | * | slowButPresent quit (Quit: leaving) |
04:21:35 | * | ltriant quit (Ping timeout: 246 seconds) |
04:27:45 | FromDiscord | <morgan> is there a way with variant types to have a variable that is the same for two cases? |
04:27:46 | * | dtomato quit (Remote host closed the connection) |
04:28:02 | * | dtomato joined #nim |
04:28:02 | * | dtomato quit (Remote host closed the connection) |
04:28:13 | FromDiscord | <Elegantbeef> Names cannot be shared |
04:28:18 | * | dtomato joined #nim |
04:28:18 | * | dtomato quit (Read error: Connection reset by peer) |
04:28:26 | FromDiscord | <morgan> basically i'd like to either have name for both of the top two or do shortname and longname for each of the char/string ones https://media.discordapp.net/attachments/371759389889003532/959670620210212954/unknown.png |
04:28:34 | * | dtomato joined #nim |
04:28:34 | * | dtomato quit (Read error: Connection reset by peer) |
04:28:50 | * | dtomato joined #nim |
04:28:50 | * | dtomato quit (Read error: Connection reset by peer) |
04:29:03 | FromDiscord | <Elegantbeef> you can make a template or procedure after as a property |
04:29:05 | * | dtomato joined #nim |
04:29:05 | * | dtomato quit (Remote host closed the connection) |
04:29:22 | * | dtomato joined #nim |
04:29:22 | * | dtomato quit (Read error: Connection reset by peer) |
04:29:27 | FromDiscord | <morgan> hm i'll just deal with the different names then |
04:29:39 | * | dtomato joined #nim |
04:29:39 | * | dtomato quit (Read error: Connection reset by peer) |
04:29:54 | * | dtomato joined #nim |
04:29:54 | * | dtomato quit (Remote host closed the connection) |
04:30:11 | * | dtomato joined #nim |
04:30:11 | * | dtomato quit (Read error: Connection reset by peer) |
04:30:27 | * | dtomato joined #nim |
04:30:28 | * | dtomato quit (Read error: Connection reset by peer) |
04:30:38 | FromDiscord | <Elegantbeef> sent a code paste, see https://paste.rs/Vyn |
04:30:43 | * | dtomato joined #nim |
04:30:43 | * | dtomato quit (Read error: Connection reset by peer) |
04:31:30 | * | dtomato joined #nim |
04:31:30 | * | dtomato quit (Read error: Connection reset by peer) |
04:31:46 | * | dtomato joined #nim |
04:31:46 | * | dtomato quit (Read error: Connection reset by peer) |
04:32:01 | * | dtomato joined #nim |
04:32:01 | * | dtomato quit (Read error: Connection reset by peer) |
04:32:14 | FromDiscord | <morgan> mm |
04:32:17 | * | dtomato joined #nim |
04:32:17 | * | dtomato quit (Remote host closed the connection) |
04:32:50 | * | dtomato joined #nim |
04:32:50 | * | dtomato quit (Read error: Connection reset by peer) |
04:33:07 | * | dtomato joined #nim |
04:33:07 | * | dtomato quit (Read error: Connection reset by peer) |
04:33:26 | FromDiscord | <Elegantbeef> guess it doesnt need the quotes, i'm just silly |
04:33:39 | * | dtomato joined #nim |
04:33:40 | * | dtomato quit (Read error: Connection reset by peer) |
04:33:56 | * | dtomato joined #nim |
04:33:57 | * | dtomato quit (Read error: Connection reset by peer) |
04:34:12 | * | dtomato joined #nim |
04:34:12 | * | dtomato quit (Read error: Connection reset by peer) |
04:34:19 | FromDiscord | <Rika> Was going to ask |
04:34:28 | * | dtomato joined #nim |
04:34:28 | * | dtomato quit (Read error: Connection reset by peer) |
04:34:34 | FromDiscord | <Elegantbeef> Also makes more sense if it's writen properly |
04:34:40 | FromDiscord | <Elegantbeef> But alas i cannot write properly |
04:34:44 | * | dtomato joined #nim |
04:34:44 | * | dtomato quit (Read error: Connection reset by peer) |
04:34:44 | FromDiscord | <Elegantbeef> Cant even write written properly |
04:35:01 | * | dtomato joined #nim |
04:35:01 | * | dtomato quit (Remote host closed the connection) |
04:35:17 | * | dtomato joined #nim |
04:35:18 | * | dtomato quit (Remote host closed the connection) |
04:35:49 | * | dtomato joined #nim |
04:35:49 | * | dtomato quit (Remote host closed the connection) |
04:36:05 | * | dtomato joined #nim |
04:36:05 | * | dtomato quit (Read error: Connection reset by peer) |
04:36:20 | * | dtomato joined #nim |
04:36:20 | * | dtomato quit (Remote host closed the connection) |
04:36:36 | * | dtomato joined #nim |
04:36:36 | * | dtomato quit (Remote host closed the connection) |
04:36:53 | * | dtomato joined #nim |
04:36:53 | * | dtomato quit (Remote host closed the connection) |
04:37:09 | * | dtomato joined #nim |
04:37:10 | * | dtomato quit (Read error: Connection reset by peer) |
04:37:26 | * | dtomato joined #nim |
04:37:27 | * | dtomato quit (Read error: Connection reset by peer) |
04:37:43 | * | dtomato joined #nim |
04:37:44 | * | dtomato quit (Read error: Connection reset by peer) |
04:37:59 | * | dtomato joined #nim |
04:37:59 | * | dtomato quit (Remote host closed the connection) |
04:38:15 | * | dtomato joined #nim |
04:38:15 | * | dtomato quit (Read error: Connection reset by peer) |
04:38:31 | * | dtomato joined #nim |
04:38:31 | * | dtomato quit (Read error: Connection reset by peer) |
04:38:46 | * | dtomato joined #nim |
04:38:46 | * | dtomato quit (Remote host closed the connection) |
04:39:02 | * | dtomato joined #nim |
04:39:02 | * | dtomato quit (Read error: Connection reset by peer) |
04:39:17 | * | dtomato joined #nim |
04:39:17 | * | dtomato quit (Read error: Connection reset by peer) |
04:39:33 | * | dtomato joined #nim |
04:46:40 | FromDiscord | <kiell> nim moment |
04:47:10 | FromDiscord | <Rika> Nah it’s really just beef being beef |
04:48:30 | FromDiscord | <Elegantbeef> yes whatever that means |
04:48:46 | FromDiscord | <huantian> indentation is a lie |
04:50:22 | * | ltriant joined #nim |
04:54:25 | * | yoyojambo quit (Remote host closed the connection) |
04:54:25 | * | yiggityswaps quit (Remote host closed the connection) |
04:54:45 | * | yoyojambo joined #nim |
05:02:04 | * | dtomato quit (Remote host closed the connection) |
05:02:21 | * | dtomato joined #nim |
05:02:21 | * | dtomato quit (Read error: Connection reset by peer) |
05:03:06 | * | dtomato joined #nim |
05:03:06 | * | dtomato quit (Remote host closed the connection) |
05:03:21 | * | dtomato joined #nim |
05:03:21 | * | dtomato quit (Remote host closed the connection) |
05:03:37 | * | dtomato joined #nim |
05:03:37 | * | dtomato quit (Remote host closed the connection) |
05:03:52 | * | dtomato joined #nim |
05:03:52 | * | dtomato quit (Read error: Connection reset by peer) |
05:04:07 | * | dtomato joined #nim |
05:04:07 | * | dtomato quit (Read error: Connection reset by peer) |
05:04:23 | * | dtomato joined #nim |
05:04:23 | * | dtomato quit (Read error: Connection reset by peer) |
05:04:38 | * | yoyojambo quit (Ping timeout: 260 seconds) |
05:04:38 | * | dtomato joined #nim |
05:04:38 | * | dtomato quit (Remote host closed the connection) |
05:05:08 | * | dtomato joined #nim |
05:05:09 | * | dtomato quit (Remote host closed the connection) |
05:05:24 | * | dtomato joined #nim |
05:05:24 | * | dtomato quit (Remote host closed the connection) |
05:05:39 | * | dtomato joined #nim |
05:05:39 | * | dtomato quit (Read error: Connection reset by peer) |
05:05:54 | * | dtomato joined #nim |
05:05:55 | * | dtomato quit (Remote host closed the connection) |
05:06:10 | * | dtomato joined #nim |
05:06:10 | * | dtomato quit (Read error: Connection reset by peer) |
05:06:26 | * | dtomato joined #nim |
05:06:27 | * | dtomato quit (Read error: Connection reset by peer) |
05:06:43 | * | dtomato joined #nim |
05:06:43 | * | dtomato quit (Read error: Connection reset by peer) |
05:07:29 | * | dtomato joined #nim |
05:07:29 | * | dtomato quit (Read error: Connection reset by peer) |
05:08:17 | * | dtomato joined #nim |
05:08:18 | * | dtomato quit (Read error: Connection reset by peer) |
05:08:34 | * | dtomato joined #nim |
05:08:35 | * | dtomato quit (Read error: Connection reset by peer) |
05:08:51 | * | dtomato joined #nim |
05:08:51 | * | dtomato quit (Read error: Connection reset by peer) |
05:09:07 | * | dtomato joined #nim |
05:09:07 | * | dtomato quit (Read error: Connection reset by peer) |
05:09:38 | * | dtomato joined #nim |
05:09:38 | * | dtomato quit (Read error: Connection reset by peer) |
05:09:53 | * | dtomato joined #nim |
05:09:53 | * | dtomato quit (Remote host closed the connection) |
05:10:08 | * | dtomato joined #nim |
05:10:08 | * | dtomato quit (Read error: Connection reset by peer) |
05:10:23 | * | dtomato joined #nim |
05:10:23 | * | dtomato quit (Remote host closed the connection) |
05:10:39 | * | dtomato joined #nim |
05:10:39 | * | dtomato quit (Read error: Connection reset by peer) |
05:10:54 | * | dtomato joined #nim |
05:10:54 | * | dtomato quit (Read error: Connection reset by peer) |
05:11:09 | * | dtomato joined #nim |
05:11:09 | * | dtomato quit (Read error: Connection reset by peer) |
05:11:25 | * | dtomato joined #nim |
05:11:26 | * | dtomato quit (Read error: Connection reset by peer) |
05:12:12 | * | dtomato joined #nim |
05:12:12 | * | dtomato quit (Remote host closed the connection) |
05:12:42 | * | dtomato joined #nim |
05:12:42 | * | dtomato quit (Remote host closed the connection) |
05:12:59 | * | dtomato joined #nim |
05:13:00 | * | dtomato quit (Remote host closed the connection) |
05:13:15 | * | dtomato joined #nim |
05:13:15 | * | dtomato quit (Remote host closed the connection) |
05:13:31 | * | dtomato joined #nim |
05:13:32 | * | dtomato quit (Read error: Connection reset by peer) |
05:13:47 | * | dtomato joined #nim |
05:13:47 | * | dtomato quit (Read error: Connection reset by peer) |
05:14:02 | * | dtomato joined #nim |
05:14:02 | * | dtomato quit (Remote host closed the connection) |
05:14:18 | * | dtomato joined #nim |
05:14:18 | * | dtomato quit (Read error: Connection reset by peer) |
05:14:33 | * | dtomato joined #nim |
05:14:33 | * | dtomato quit (Read error: Connection reset by peer) |
05:14:48 | * | dtomato joined #nim |
05:14:48 | * | dtomato quit (Remote host closed the connection) |
05:15:04 | * | dtomato joined #nim |
05:15:04 | * | dtomato quit (Remote host closed the connection) |
05:15:20 | * | dtomato joined #nim |
05:15:21 | * | dtomato quit (Read error: Connection reset by peer) |
05:15:37 | * | dtomato joined #nim |
05:15:38 | * | dtomato quit (Remote host closed the connection) |
05:15:53 | * | dtomato joined #nim |
05:15:53 | * | dtomato quit (Remote host closed the connection) |
05:16:09 | * | dtomato joined #nim |
05:16:09 | * | dtomato quit (Read error: Connection reset by peer) |
05:16:26 | * | dtomato joined #nim |
05:16:26 | * | dtomato quit (Read error: Connection reset by peer) |
05:16:42 | * | dtomato joined #nim |
05:16:42 | * | dtomato quit (Remote host closed the connection) |
05:16:57 | * | dtomato joined #nim |
05:16:57 | * | dtomato quit (Remote host closed the connection) |
05:17:13 | * | dtomato joined #nim |
05:17:13 | * | dtomato quit (Remote host closed the connection) |
05:17:29 | * | dtomato joined #nim |
05:17:29 | * | dtomato quit (Read error: Connection reset by peer) |
05:17:45 | * | dtomato joined #nim |
05:17:45 | * | dtomato quit (Remote host closed the connection) |
05:18:01 | * | dtomato joined #nim |
05:18:01 | * | dtomato quit (Remote host closed the connection) |
05:18:17 | * | dtomato joined #nim |
05:18:17 | * | dtomato quit (Remote host closed the connection) |
05:18:33 | * | dtomato joined #nim |
05:18:33 | * | dtomato quit (Read error: Connection reset by peer) |
05:18:48 | * | dtomato joined #nim |
05:18:48 | * | dtomato quit (Read error: Connection reset by peer) |
05:19:20 | * | dtomato joined #nim |
05:19:20 | * | dtomato quit (Read error: Connection reset by peer) |
05:19:37 | * | dtomato joined #nim |
05:19:37 | * | dtomato quit (Read error: Connection reset by peer) |
05:19:52 | * | dtomato joined #nim |
05:19:52 | * | dtomato quit (Remote host closed the connection) |
05:20:08 | * | dtomato joined #nim |
05:20:08 | * | dtomato quit (Read error: Connection reset by peer) |
05:20:09 | FromDiscord | <offbeat-stuff (offbeat-stuff)> what is the nim equivalent of |
05:20:23 | * | dtomato joined #nim |
05:20:23 | * | dtomato quit (Remote host closed the connection) |
05:20:36 | FromDiscord | <offbeat-stuff (offbeat-stuff)> `[...a,...b,c,d,...e]` in javascript |
05:20:38 | * | dtomato joined #nim |
05:20:39 | * | dtomato quit (Remote host closed the connection) |
05:20:48 | FromDiscord | <Elegantbeef> What's that do? |
05:20:55 | * | dtomato joined #nim |
05:20:55 | * | dtomato quit (Read error: Connection reset by peer) |
05:20:58 | FromDiscord | <offbeat-stuff (offbeat-stuff)> basically joining two array |
05:21:11 | FromDiscord | <Elegantbeef> `a & b`? |
05:21:12 | * | dtomato joined #nim |
05:21:12 | * | dtomato quit (Read error: Connection reset by peer) |
05:21:14 | FromDiscord | <offbeat-stuff (offbeat-stuff)> ...unwraps all elements of the array |
05:21:27 | * | dtomato joined #nim |
05:21:27 | * | dtomato quit (Remote host closed the connection) |
05:21:40 | FromDiscord | <offbeat-stuff (offbeat-stuff)> yeah that but for simple array[L,T] |
05:21:58 | * | dtomato joined #nim |
05:21:58 | * | dtomato quit (Remote host closed the connection) |
05:22:02 | FromDiscord | <Elegantbeef> By simple arrays you mean static ones? |
05:22:09 | FromDiscord | <Elegantbeef> `array` you mean |
05:22:15 | * | dtomato joined #nim |
05:22:15 | * | dtomato quit (Read error: Connection reset by peer) |
05:22:20 | FromDiscord | <offbeat-stuff (offbeat-stuff)> yeah just array |
05:22:30 | * | dtomato joined #nim |
05:22:30 | * | dtomato quit (Read error: Connection reset by peer) |
05:22:34 | FromDiscord | <Elegantbeef> Nim's stdlib doesnt have the operators for them sadly |
05:22:46 | * | dtomato joined #nim |
05:22:46 | * | dtomato quit (Remote host closed the connection) |
05:23:02 | * | dtomato joined #nim |
05:23:02 | * | dtomato quit (Remote host closed the connection) |
05:23:17 | * | dtomato joined #nim |
05:23:17 | * | dtomato quit (Read error: Connection reset by peer) |
05:23:24 | FromDiscord | <offbeat-stuff (offbeat-stuff)> just looking if someone has made some sugar for that |
05:23:33 | * | dtomato joined #nim |
05:23:33 | * | dtomato quit (Read error: Connection reset by peer) |
05:23:49 | * | dtomato joined #nim |
05:23:49 | * | dtomato quit (Read error: Connection reset by peer) |
05:24:20 | * | dtomato joined #nim |
05:24:20 | * | dtomato quit (Remote host closed the connection) |
05:24:36 | * | dtomato joined #nim |
05:24:36 | * | dtomato quit (Read error: Connection reset by peer) |
05:24:51 | * | dtomato joined #nim |
05:24:51 | * | dtomato quit (Remote host closed the connection) |
05:25:06 | * | dtomato joined #nim |
05:25:07 | * | dtomato quit (Read error: Connection reset by peer) |
05:25:39 | * | dtomato joined #nim |
05:25:39 | * | dtomato quit (Read error: Connection reset by peer) |
05:25:54 | * | dtomato joined #nim |
05:25:54 | * | dtomato quit (Remote host closed the connection) |
05:26:11 | * | dtomato joined #nim |
05:26:11 | * | dtomato quit (Read error: Connection reset by peer) |
05:26:28 | * | dtomato joined #nim |
05:26:28 | * | dtomato quit (Remote host closed the connection) |
05:26:44 | * | dtomato joined #nim |
05:26:45 | * | dtomato quit (Read error: Connection reset by peer) |
05:27:00 | * | dtomato joined #nim |
05:27:00 | * | dtomato quit (Remote host closed the connection) |
05:27:00 | FromDiscord | <Elegantbeef> https://play.nim-lang.org/#ix=3U3V |
05:27:01 | FromDiscord | <Elegantbeef> There you go |
05:27:16 | * | dtomato joined #nim |
05:27:16 | * | dtomato quit (Remote host closed the connection) |
05:27:33 | * | dtomato joined #nim |
05:27:33 | * | dtomato quit (Remote host closed the connection) |
05:28:05 | * | dtomato joined #nim |
05:28:05 | * | dtomato quit (Read error: Connection reset by peer) |
05:28:21 | * | dtomato joined #nim |
05:28:21 | * | dtomato quit (Read error: Connection reset by peer) |
05:28:53 | * | dtomato joined #nim |
05:28:53 | * | dtomato quit (Remote host closed the connection) |
05:29:09 | * | dtomato joined #nim |
05:29:09 | * | dtomato quit (Read error: Connection reset by peer) |
05:29:25 | * | dtomato joined #nim |
05:29:25 | * | dtomato quit (Read error: Connection reset by peer) |
05:29:42 | * | dtomato joined #nim |
05:29:42 | * | dtomato quit (Remote host closed the connection) |
05:30:44 | * | dtomato joined #nim |
05:30:44 | * | dtomato quit (Read error: Connection reset by peer) |
05:31:01 | * | dtomato joined #nim |
05:31:01 | * | dtomato quit (Read error: Connection reset by peer) |
05:31:17 | * | dtomato joined #nim |
05:31:17 | * | dtomato quit (Read error: Connection reset by peer) |
05:31:34 | * | dtomato joined #nim |
05:31:34 | * | dtomato quit (Remote host closed the connection) |
05:31:51 | * | dtomato joined #nim |
05:31:51 | * | dtomato quit (Read error: Connection reset by peer) |
05:32:08 | * | dtomato joined #nim |
05:32:08 | * | dtomato quit (Read error: Connection reset by peer) |
05:32:31 | * | vicfred joined #nim |
05:33:09 | * | dtomato joined #nim |
05:33:10 | * | dtomato quit (Read error: Connection reset by peer) |
05:33:26 | * | dtomato joined #nim |
05:33:27 | * | dtomato quit (Read error: Connection reset by peer) |
05:33:43 | * | dtomato joined #nim |
05:33:44 | * | dtomato quit (Read error: Connection reset by peer) |
05:33:59 | FromDiscord | <huantian> what's that thing I can use to clear a var set again |
05:34:00 | * | dtomato joined #nim |
05:34:00 | * | dtomato quit (Read error: Connection reset by peer) |
05:34:17 | * | dtomato joined #nim |
05:34:17 | * | dtomato quit (Read error: Connection reset by peer) |
05:34:32 | FromDiscord | <offbeat-stuff (offbeat-stuff)> thanks elegantBeed |
05:34:34 | * | dtomato joined #nim |
05:34:34 | * | dtomato quit (Read error: Connection reset by peer) |
05:34:38 | FromDiscord | <Elegantbeef> "clear a var set"? |
05:34:39 | FromDiscord | <offbeat-stuff (offbeat-stuff)> Beef\ |
05:34:56 | FromDiscord | <huantian> wups I mean reset a variable to it's default state |
05:35:02 | FromDiscord | <Elegantbeef> `reset` |
05:35:08 | FromDiscord | <huantian> that makes sense |
05:35:22 | * | dtomato joined #nim |
05:35:22 | * | dtomato quit (Remote host closed the connection) |
05:35:38 | * | dtomato joined #nim |
05:35:38 | * | dtomato quit (Read error: Connection reset by peer) |
05:35:55 | * | dtomato joined #nim |
05:35:55 | * | dtomato quit (Read error: Connection reset by peer) |
05:36:57 | * | dtomato joined #nim |
05:36:57 | * | dtomato quit (Remote host closed the connection) |
05:37:30 | * | dtomato joined #nim |
05:37:30 | * | dtomato quit (Read error: Connection reset by peer) |
05:37:46 | * | dtomato joined #nim |
05:37:46 | * | dtomato quit (Remote host closed the connection) |
05:38:03 | * | dtomato joined #nim |
05:38:03 | * | dtomato quit (Read error: Connection reset by peer) |
05:38:19 | * | dtomato joined #nim |
05:38:19 | * | dtomato quit (Read error: Connection reset by peer) |
05:38:35 | * | dtomato joined #nim |
05:38:35 | * | dtomato quit (Read error: Connection reset by peer) |
05:38:52 | * | dtomato joined #nim |
05:38:53 | * | dtomato quit (Remote host closed the connection) |
05:39:25 | * | dtomato joined #nim |
05:39:25 | * | dtomato quit (Read error: Connection reset by peer) |
05:39:41 | * | dtomato joined #nim |
05:39:41 | * | dtomato quit (Read error: Connection reset by peer) |
05:39:57 | * | dtomato joined #nim |
05:39:57 | * | dtomato quit (Read error: Connection reset by peer) |
05:40:14 | * | dtomato joined #nim |
05:40:14 | * | dtomato quit (Read error: Connection reset by peer) |
05:44:43 | FromDiscord | <Elegantbeef> Well huan i have a silly written RFC for not expanding macro error messages 😛 |
06:00:55 | FromDiscord | <huantian> I'll check it out! |
06:01:15 | * | vicfred quit (Ping timeout: 260 seconds) |
06:01:28 | * | vicfred joined #nim |
06:09:32 | FromDiscord | <morgan> so like variant objects, is it possible to have overloaded procs for each subvariant? |
06:10:58 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U40 |
06:11:06 | FromDiscord | <Elegantbeef> Or put the logic for each kind inside `render` it's up to you there |
06:11:31 | FromDiscord | <Elegantbeef> Personally i prefer the above with a `assert circ.kind == circle` for instance |
06:12:07 | FromDiscord | <Solitude> https://github.com/alehander92/poly no hecking way... |
06:12:30 | FromDiscord | <Elegantbeef> I also did something like that once |
06:12:40 | FromDiscord | <Solitude> doesnt count |
06:12:52 | FromDiscord | <Elegantbeef> True |
06:13:18 | FromDiscord | <Elegantbeef> Mine did `{.meth: kind.}` and then at the call it converted it into a case stmt |
06:22:13 | * | vicfred quit (Read error: Connection reset by peer) |
06:22:55 | * | vicfred joined #nim |
06:31:28 | * | vicfred_ joined #nim |
06:32:08 | * | vicfred quit (Ping timeout: 260 seconds) |
06:38:18 | FromDiscord | <Rika> Mm meth |
06:55:44 | FromDiscord | <abdu> what is empty for untyped data type↵(to be assigned on RHS) |
06:56:24 | FromDiscord | <Elegantbeef> untyped is only a macro/template thing there is no "empty" for it |
06:56:31 | FromDiscord | <Elegantbeef> What do you mean exactly? |
06:57:01 | FromDiscord | <Elegantbeef> Or should i just wait for the stack overflow/forum post? |
06:58:54 | FromDiscord | <abdu> foo( bar:untyped= ) = ↵how empty default e,g, above |
06:59:03 | FromDiscord | <Elegantbeef> You cannot |
06:59:12 | FromDiscord | <Elegantbeef> you do `foo()` and `foo(bar: untyped)` |
06:59:21 | FromDiscord | <Elegantbeef> an empty untyped doesnt make any sense |
07:00:01 | FromDiscord | <Elegantbeef> untyped means "the compiler hasnt typed the code" so there cannot be a 'empty' for it |
07:00:16 | FromDiscord | <Elegantbeef> Atleast not an empty useful in dispatch |
07:01:35 | FromDiscord | <Elegantbeef> Also doesnt help that the right hand of `=` inside a parameter list needs to be compilable code |
07:03:46 | FromDiscord | <Elegantbeef> A full example of your code would be more insightful if those answers dont suffice |
07:15:07 | * | jmdaemon quit (Ping timeout: 256 seconds) |
07:23:46 | FromDiscord | <Hamid_Bluri> sent a code paste, see https://play.nim-lang.org/#ix=3U4d |
07:25:21 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U4f |
07:25:21 | FromDiscord | <Elegantbeef> Damn iit |
07:25:37 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U4g |
07:25:45 | FromDiscord | <Elegantbeef> replace tuple with object idealy |
07:26:01 | FromDiscord | <Hamid_Bluri> thanks |
07:48:28 | * | vicfred__ joined #nim |
07:48:47 | * | vicfred_ quit (Ping timeout: 246 seconds) |
08:03:59 | FromDiscord | <WabileM> Is there an example of coding a telnet client in Nim? I have searched nimble for a telnet client and there is none. |
08:06:46 | FromDiscord | <Elegantbeef> There are only two repos on github with `telnet` and both are hacking related, so seems no one has one |
08:13:32 | FromDiscord | <Elegantbeef> The protocol is supposedly simple so should be connect with a TCP socket then parse the protocol using something like binarylang or your own manual one |
08:22:48 | FromDiscord | <Elegantbeef> I must be an idiot cause i cannot find a good explanation of the protocol |
08:44:09 | FromDiscord | <enthus1ast> do stuff\\n |
08:44:45 | FromDiscord | <enthus1ast> an AsyncSocket and readLine and send is all you need |
08:45:39 | FromDiscord | <enthus1ast> but mirai is open source, why do you not use that for your botnet? ;) |
08:46:10 | FromDiscord | <Elegantbeef> Hey they might just want to learn how! |
08:46:39 | FromDiscord | <enthus1ast> hey im just trying to help \:) |
09:18:32 | NimEventer | New thread by Volodymyr: Times - Intended use and difference between DateTime and Time, see https://forum.nim-lang.org/t/9067 |
09:59:47 | * | ltriant quit (Ping timeout: 260 seconds) |
10:06:56 | * | vicfred__ quit (Remote host closed the connection) |
10:07:50 | * | vicfred__ joined #nim |
10:16:03 | * | ltriant joined #nim |
12:04:10 | * | slowButPresent joined #nim |
12:51:37 | * | om3ga quit (Ping timeout: 240 seconds) |
12:59:13 | * | lumo_e joined #nim |
13:04:06 | FromDiscord | <TryAngle> sent a code paste, see https://paste.rs/cuW |
13:05:22 | * | pro joined #nim |
13:06:40 | FromDiscord | <TryAngle> oh! I could have just looked into docs and I would have found iterator keys(node: JsonNode): string {.....} |
13:06:44 | FromDiscord | <TryAngle> (edit) "iterator" => "`iterator" | "{.....}" => "{.....}`" |
13:13:35 | FromDiscord | <slymilano> Nim is at the top of /r/selfhosted now 😩 |
13:20:57 | FromDiscord | <auxym> that's cool |
13:24:06 | FromDiscord | <Rika> where? |
13:25:30 | FromDiscord | <Rika> oh there |
13:28:52 | FromDiscord | <ajusa> torrentinim I assume |
13:30:31 | FromDiscord | <ajusa> or nitter |
13:42:41 | FromDiscord | <auxym> torrentinim |
13:44:05 | * | arkurious joined #nim |
14:57:03 | FromDiscord | <federico3> huh? where? |
14:57:34 | FromDiscord | <federico3> oh, found it |
15:01:27 | FromDiscord | <federico3> "Run without ceremony. You download a binary, run it, that's it. Really" |
15:01:46 | FromDiscord | <federico3> how about no? |
15:08:12 | NimEventer | New thread by Teras: Control+C and procs launched with execCmd, see https://forum.nim-lang.org/t/9069 |
15:09:19 | * | Gustavo6046 joined #nim |
15:10:35 | * | Gustavo6046 quit (Max SendQ exceeded) |
15:11:03 | * | Gustavo6046 joined #nim |
15:12:51 | * | lumo_e quit (Ping timeout: 260 seconds) |
15:22:02 | FromDiscord | <leolecrado> hi, i'm new to nim and I downloaded NimEdit IDE on windows, but when running the exe, nothing appears |
15:22:39 | FromDiscord | <leolecrado> (nim is on path, can do 'nim -v' on cmd), and I also tried the nimlib.cfg thing as suggested on the download page |
15:22:48 | FromDiscord | <leolecrado> (edit) "cmd)," => "cmd," | "page" => "page)" |
15:23:14 | FromDiscord | <leolecrado> Does someone know how I can make NimEdit on my windows pc ? |
15:23:24 | FromDiscord | <leolecrado> (edit) "Does someone know how I can make NimEdit ... on" added "run" |
15:26:07 | * | lumo_e joined #nim |
15:28:40 | FromDiscord | <xflywind> In reply to @leolecrado "hi, i'm new to": nimedit is a bit old project: see https://github.com/Araq/nimedit/issues/18 |
15:29:32 | FromDiscord | <xflywind> see also https://github.com/nim-lang/Nim/wiki/Editor-Support |
15:33:41 | FromDiscord | <slymilano> In reply to @federico3 "how about no?": what do you mean? |
15:36:59 | FromDiscord | <leolecrado> In reply to @flywind "nimedit is a bit": ok, and is there any other windows compatible nim only IDE ? |
15:39:11 | FromDiscord | <demotomohiro> https://github.com/fox0430/moe |
15:39:34 | FromDiscord | <demotomohiro> It is written in Nim |
15:41:17 | FromDiscord | <demotomohiro> Most of people use vs code or vim/neovim to write Nim code.↵https://github.com/nim-lang/Nim/wiki/Editor-Support |
15:48:08 | FromDiscord | <leolecrado> In reply to @demotomohiro "https://github.com/fox0430/moe": Ok, the moe editor doesn't look good to me↵I'm looking for this because I saw the power of having an IDE made specially for the language. Pharo IDE gives amazing powers to the smalltalk devs. |
15:48:44 | FromDiscord | <leolecrado> Something like Pharo for nim would be sooo nice |
15:52:51 | FromDiscord | <Patitotective> In reply to @demotomohiro "Most of people use": what about sublime? :p |
15:53:30 | FromDiscord | <huantian> I think there have been attempts to make an IDE in Nim for Nim but those have just died |
15:53:42 | FromDiscord | <huantian> And most people moved to VSCode or Vim |
15:53:50 | FromDiscord | <huantian> Nim definitely needs better tooling though |
15:58:52 | FromDiscord | <leolecrado> In reply to @huantian "I think there have": you have the "bot" blue tag. You're a bot ? |
15:58:53 | FromDiscord | <demotomohiro> @Patitotective This is the result of Nim survay: https://nim-lang.org/blog/2022/01/14/community-survey-results-2021.html |
15:59:29 | FromDiscord | <Rika> In reply to @leolecrado "you have the "bot"": no, bridged from other chat servioe |
15:59:30 | FromDiscord | <Rika> (edit) "servioe" => "service" |
15:59:57 | FromDiscord | <leolecrado> In reply to @Rika "no, bridged from other": What ? so he is a bot or not ? |
16:00:08 | FromDiscord | <Rika> not a bot |
16:00:16 | FromDiscord | <Rika> hes just using something else than discord |
16:00:31 | FromDiscord | <leolecrado> oh ok, so discord tags externals to "bot" |
16:00:34 | * | ozzz joined #nim |
16:00:41 | FromDiscord | <Patitotective> In reply to @demotomohiro "<@762008715162419261> This is the": :C |
16:00:58 | FromDiscord | <demotomohiro> It is a freqently asked question: https://internet-of-tomohiro.netlify.app/nim/faq.en.html#community-are-bots-in-nim-discord-channel-aiqmark |
16:03:28 | FromDiscord | <leolecrado> In reply to @demotomohiro "<@762008715162419261> This is the": Yes, it's obvious that nim users mostly use VSCode, because that's the most user friendly thing today↵I just think that VSCode is not the optimal editor reachable, and Pharo showed for smalltalk that a tailor made editor can be very cool |
16:03:45 | FromDiscord | <leolecrado> (edit) "In reply to @demotomohiro "<@762008715162419261> This is the": Yes, it's obvious that nim users mostly use VSCode, because that's the most user friendly thing ... today↵I" added "available" |
16:04:16 | FromDiscord | <Rika> a tailor made editor is also very expensive, whether it be time or whichever other resource |
16:06:00 | FromDiscord | <Phil> sent a code paste, see https://play.nim-lang.org/#ix=3U6H |
16:06:25 | FromDiscord | <Phil> (edit) "https://play.nim-lang.org/#ix=3U6H" => "https://play.nim-lang.org/#ix=3U6I" |
16:08:31 | FromDiscord | <leolecrado> In reply to @Rika "a tailor made editor": True, yet, making nim has been even more expensive, and we won't have nim if the creator followed the same reasoning |
16:08:45 | FromDiscord | <Rika> no, thats not the logic here |
16:08:48 | FromDiscord | <leolecrado> (edit) "won't" => "wouldn't" |
16:08:55 | FromDiscord | <Rika> you're compounding expenses, theyre not independent |
16:09:11 | FromDiscord | <Rika> making nim is one, making a tailor made editor is an addition |
16:09:17 | FromDiscord | <Rika> we have a limit here |
16:10:05 | FromDiscord | <leolecrado> Of course I see, I think it shouldn't be a weight on the creator(s) of nim, I think more of a community project |
16:10:25 | FromDiscord | <Rika> In reply to @Isofruit "Erm... If I want": when you raise exceptions it's like this under-the-hood: `raise (ref TError)(msg: "", ...)` |
16:10:36 | FromDiscord | <leolecrado> (edit) "project" => "project↵They are already doing much on the language itself" |
16:10:36 | FromDiscord | <Rika> we dont have a large community |
16:10:49 | FromDiscord | <Rika> we're already struggling with the normal tooling |
16:11:04 | FromDiscord | <Phil> Wait, right, weren't you supposed to always do raise `newException( type, msg)`? Forgot about that one |
16:11:15 | FromDiscord | <Rika> `newException` compiles to what i said |
16:11:19 | FromDiscord | <Rika> check the definition 😛 |
16:11:21 | FromDiscord | <Phil> (edit) "raise `newException(" => "`raise newException(" |
16:11:57 | FromDiscord | <Phil> sees nil as the default argument |
16:12:03 | FromDiscord | <Phil> My eeeeeyyeeeeeees |
16:12:06 | * | PMunch joined #nim |
16:12:11 | FromDiscord | <Phil> (edit) "argument" => "argument for parent exception" |
16:12:33 | * | zeus-supreme joined #nim |
16:13:10 | FromDiscord | <Rika> nil |
16:13:22 | FromDiscord | <Rika> `raise (ref Defect)(nil)`? |
16:13:26 | FromDiscord | <Rika> heehee |
16:13:45 | FromDiscord | <Phil> > template newException(exceptn: typedesc, message: string;↵> parentException: ref Exception = nil): untyped =↵Mostly just joking around since it's pretty unusual for me to spot a nil in the wild |
16:13:45 | FromDiscord | <Rika> dont ask me what it does |
16:14:02 | FromDiscord | <Rika> idk what that parent exception thing is tbh, you could prolly ignore it |
16:14:13 | FromDiscord | <Phil> Nah, I know what that is |
16:14:17 | FromDiscord | <Phil> Exceptions can cause exceptions |
16:14:36 | PMunch | If you catch an exception in your library and want to pass it up the chain but wrap it up with some extra information you can use a parent exception |
16:14:42 | FromDiscord | <Phil> Often enough you have usecases where you catch an exception and re-throw it as a different one with a better error message, you can then attach the old one for a more complete stacktrace so you don't lose where the thing originated |
16:14:43 | FromDiscord | <Rika> congrats on reading more than i do |
16:15:09 | FromDiscord | <Phil> It's more that java does this |
16:15:11 | FromDiscord | <Phil> A lot |
16:16:05 | FromDiscord | <huantian> Classic vertical monitor to read stack traces joke |
16:16:44 | FromDiscord | <Phil> So from how I understand the template it essentially just builds an expression `ErrorType(msg: <my message text>, parent: <ref to parent exception or nil>)` |
16:17:22 | FromDiscord | <Rika> In reply to @huantian "Classic vertical monitor to": stack traces longer than my resume |
16:17:46 | FromDiscord | <Phil> When your mousewheel runs hot from scrolling so much |
16:18:25 | FromDiscord | <Rika> when you need to buy a logitech mouse just so you could scroll to the bottom without breaking the mouse |
16:18:42 | FromDiscord | <Rika> for context logitech mice have a free scroll wheel toggle |
16:18:57 | FromDiscord | <Phil> Yeh, I own a bluetooth one with a bluetooth keyboard mixed in |
16:19:16 | FromDiscord | <Rika> really handy btw, lets you scroll faster than your terminal can usually render shit lol unless you use kitty 😎 |
16:20:01 | FromDiscord | <leolecrado> In reply to @Rika "we dont have a": I heard that smalltalk had a very small community↵I'm very curious to know how the achieved pharo then 🤔 |
16:20:08 | FromDiscord | <leolecrado> (edit) "the" => "they" |
16:20:16 | FromDiscord | <Rika> probably focused on that? |
16:20:47 | FromDiscord | <huantian> Yes I love this feature never switching away from my g502↵(@Rika) |
16:20:52 | FromDiscord | <Rika> i mean i wouldnt say nim cant do it, its just not what we think is something to delve into right now since we have some other more pressing problems i'd say |
16:20:59 | FromDiscord | <Rika> oh nice i also got a g502 |
16:21:11 | FromDiscord | <Rika> i put all the weights in it cuz im a heavy mouse dude, i dont play fps anywya |
16:21:51 | FromDiscord | <leolecrado> In reply to @Rika "i mean i wouldnt": ohh ok, there is somewhere I can see the priorities of the community ? (i'm new, pardon me) |
16:22:11 | FromDiscord | <Rika> In reply to @demotomohiro "<@762008715162419261> This is the": prolly this one lol |
16:22:47 | FromDiscord | <huantian> I kept the weights out mostly because I couldn’t feel a difference with them in or out↵(@Rika) |
16:23:47 | FromDiscord | <Recruit_main707> In reply to @leolecrado "ohh ok, there is": dont worry, feel free to ask anything else |
16:30:31 | FromDiscord | <leolecrado> In reply to @Recruit_main707 "dont worry, feel free": ty, very nice of you 🙂↵Speaking about community size, do you have any idea how to measure the size of a community ? |
16:31:08 | FromDiscord | <leolecrado> By the number of people on the discord ?↵By the number of PRs on the github repo ?↵by the number of contributors on the github repo ? |
16:31:53 | FromDiscord | <leolecrado> For the purpose of estimating the power of the community to make new things, or resolve issues |
16:32:01 | FromDiscord | <leolecrado> (edit) "things," => "things" |
16:34:06 | * | zeus-supreme1 joined #nim |
16:36:56 | * | zeus-supreme quit (Ping timeout: 246 seconds) |
16:42:57 | * | jmdaemon joined #nim |
16:44:38 | * | Gustavo6046 quit (Write error: Connection reset by peer) |
16:47:05 | * | Gustavo6046 joined #nim |
16:47:54 | * | Gustavo6046 quit (Remote host closed the connection) |
16:48:03 | * | lumo_e quit (Ping timeout: 260 seconds) |
16:48:15 | * | Gustavo6046 joined #nim |
16:59:52 | FromDiscord | <Solitude> its about 200 power |
17:32:58 | * | ozzz is now known as om3ga |
17:36:43 | * | xet7 quit (Remote host closed the connection) |
17:38:10 | * | xet7 joined #nim |
17:47:58 | * | lumo_e joined #nim |
18:02:29 | FromDiscord | <abdu> In reply to @Elegantbeef "You cannot": suffices it, sure |
18:05:53 | FromDiscord | <thadeudepaula> sent a long message, see http://ix.io/3U78 |
18:05:57 | FromDiscord | <thadeudepaula> https://media.discordapp.net/attachments/371759389889003532/959876357880430632/IMG_20220402_150410_540.png |
18:08:00 | FromDiscord | <Elegantbeef> Nimsuggest has a bug presently it's probably jusut that, if you dont need anything in 1.6 it doesnt appear with 1.4 |
18:11:33 | FromDiscord | <Elegantbeef> I'd suggest making an issue just to raise it up |
18:11:46 | FromDiscord | <thadeudepaula> In reply to @Elegantbeef "Nimsuggest has a bug": As I'm learning it is a problem... |
18:12:02 | FromDiscord | <thadeudepaula> ok, I'll head there |
18:12:59 | FromDiscord | <Elegantbeef> Between 1.4 and 1.6 a bug was introduced which results in nimsuggest getting different pointers for values and erroring, it's a shame, but it is what it is |
18:15:42 | FromDiscord | <thadeudepaula> In reply to @Elegantbeef "Between 1.4 and 1.6": Thank you, at least my reasoning about code is ok :) |
18:16:20 | FromDiscord | <Pegacraffft> Is there a way to create a pointer with a memory address i choose? |
18:17:48 | FromDiscord | <abdu> what actually differnce between mixin and {.inject.} as how it functionals? |
18:18:34 | FromDiscord | <huantian> In reply to @Pegacraffft "Is there a way": think you can `cast` a the value into a ptr |
18:19:01 | FromDiscord | <Pegacraffft> In reply to @huantian "think you can `cast`": how would that look like? |
18:21:30 | FromDiscord | <Pegacraffft> In reply to @huantian "think you can `cast`": Okay, tried it, works ^^ Thanks |
18:23:01 | FromDiscord | <Elegantbeef> They're 100% unrelated↵(@abdu) |
18:23:15 | FromDiscord | <Elegantbeef> `mixin` adds scope on instantiation and `inject` doesnt gensym a symbol |
18:25:07 | NimEventer | New thread by Mardiyah: Clarity on mixin and pragma {.inject.}, see https://forum.nim-lang.org/t/9070 |
18:25:26 | FromDiscord | <Elegantbeef> I swear |
18:30:09 | PMunch | @abdu, please ask your question one place at a time and accept the answers your get instead of posting it everywhere at the same time |
18:33:26 | * | vicfred__ quit (Quit: Leaving) |
18:41:32 | FromDiscord | <Elegantbeef> Thanks pmunch 🙂 |
18:42:12 | PMunch | For what? |
18:42:48 | FromDiscord | <Elegantbeef> My version of that had a few more aggressive words |
18:47:05 | PMunch | Haha :P |
19:35:56 | FromDiscord | <hmmm> pmunchie is a diplomat 😛 |
19:43:35 | FromDiscord | <Elegantbeef> Hey i'm also a diplomat but more like ukraine's UN diplomat 😛 |
20:05:17 | FromDiscord | <hmmm> uh oh """ """ doesn't work with |
20:05:18 | FromDiscord | <hmmm> \r\n |
20:05:24 | FromDiscord | <hmmm> but " " does |
20:05:46 | FromDiscord | <hmmm> anything I can do to make """ """ work with those 🤔 |
20:06:11 | FromDiscord | <Elegantbeef> they're raw string literals, you need to process them to get `\r\n` to work |
20:06:32 | FromDiscord | <hmmm> hmm |
20:06:56 | FromDiscord | <Elegantbeef> there is `unescape` and `escape` depending on what you need |
20:08:02 | FromDiscord | <hmmm> hmm I'll look into them |
20:08:16 | FromDiscord | <Elegantbeef> Actually i dont think those work as i thought |
20:08:53 | * | vicfred joined #nim |
20:12:01 | FromDiscord | <hmmm> lol the caveman way works """" something """ & "\r\n" & """ something else """ but I wish I had better options lol |
20:12:13 | FromDiscord | <Jakraes> Quick question, is is possible to have conditional statements inside of switch cases? |
20:12:18 | FromDiscord | <Jakraes> Something like |
20:12:48 | FromDiscord | <Jakraes> switch (temp):↵ case temp < 10:↵ do something |
20:12:51 | FromDiscord | <hmmm> jak my bro how is the roguelike goin |
20:13:26 | FromDiscord | <Jakraes> Heya there, both goat and I are taking a pause but as soon as I can get back to it I will |
20:13:34 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U7x |
20:14:09 | FromDiscord | <Jakraes> In reply to @hmmm "jak my bro how": But you can test the newest version here |
20:14:10 | FromDiscord | <Jakraes> https://github.com/Jakraes/TestNimHack/ |
20:14:44 | FromDiscord | <hmmm> 4 sure I want to hop on the bandwagon soon, I think I have 1 or 2 weeks more to finish my current app and then I'm free |
20:15:44 | FromDiscord | <Jakraes> sent a code paste, see https://play.nim-lang.org/#ix=3U7z |
20:16:11 | FromDiscord | <Jakraes> Nice, all help is appreciated, I'd like to make this a community wide project for anyone that wants to join tbh |
20:16:24 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U7A |
20:16:42 | FromDiscord | <Jakraes> Even if the code ends up being spaghetti, it'd still be fun to see a roguelike made like that |
20:17:00 | FromDiscord | <Jakraes> Gotcha, so basically any number that is between 0 and 30 will echo hmm |
20:17:13 | FromDiscord | <Jakraes> Lemme try that out then |
20:17:14 | FromDiscord | <hmmm> yea it's fun |
20:17:45 | FromDiscord | <Jakraes> Yup, so far I'm learning a crapton from this project tbh |
20:18:47 | FromDiscord | <Jakraes> I think I'll be taking a lot of inspiration from DF and Ultima Ratio Regum |
20:18:55 | FromDiscord | <Jakraes> World generation wise |
20:19:03 | FromDiscord | <Elegantbeef> Yea you also could do `if x in 0f..30f` |
20:19:17 | FromDiscord | <Elegantbeef> Nim has a bunch of built in ergonomic solutions |
20:19:50 | FromDiscord | <Jakraes> A thing that I love about URR is that it has really cool graphics when showing off certain objects |
20:20:23 | FromDiscord | <Jakraes> Oh yeah true, I wanted to use something that looks cleaner though, which is why I went for switch cases |
20:23:05 | FromDiscord | <Elegantbeef> They're called casestatments 😛 |
20:24:45 | FromDiscord | <Anuke> Why does copyMem segfault here? https://play.nim-lang.org/#ix=3U7C |
20:25:19 | * | hellstabber joined #nim |
20:26:49 | FromDiscord | <Phil> Huh... turns out std/json can't deal with `Table[int64, string]`↵(Throws `type mismatch: got <KeyValuePair[system.int, system.string]> but expected one of: <A LOT OF EXAMPLES>` ) |
20:27:11 | FromDiscord | <Anuke> In reply to @Anuke "Why does copyMem segfault": Context: I'm trying to convert a C-string with arbitrary data in it to a string, as per <https://forum.nim-lang.org/t/3850>↵The cstring data is alloc'd and passed into a C function outside the snippet, but that doesn't seem to affect the segfault |
20:27:15 | FromDiscord | <Phil> (edit) "<KeyValuePair[system.int," => "<KeyValuePair[system.int64," |
20:29:10 | FromDiscord | <Elegantbeef> you're passing `addr pointer` |
20:29:20 | FromDiscord | <Elegantbeef> Works fine |
20:29:23 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U7F |
20:30:13 | FromDiscord | <Anuke> Originally I was using `cstring` for assetData - that's a pointer and doesn't need `addr`? |
20:30:30 | FromDiscord | <Elegantbeef> `addr pointer` is a pointer to the stack `assetData` then you attempt to copy `size` from there and causes it to dereference ahead stack |
20:30:45 | FromDiscord | <Elegantbeef> cstring is `ptr char` internally |
20:30:54 | FromDiscord | <Elegantbeef> you only need `addr` when you want to copy from a stack variable in this case |
20:31:19 | FromDiscord | <Anuke> right, so I was double-addressing, thanks |
20:31:34 | FromDiscord | <Elegantbeef> no problem |
20:32:48 | FromDiscord | <Elegantbeef> It's a shame `$` doesnt have an optional len parameter for `cstring` |
20:34:03 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3U7G |
21:00:25 | FromDiscord | <hmmm> hmmm what's the difference between datetime and time? when I echo them they seem the same but I can't comprare them with > < |
21:00:47 | FromDiscord | <Elegantbeef> https://forum.nim-lang.org/t/9067 |
21:01:20 | FromDiscord | <morgan> i am really confused what the compiler doesn't like about this https://media.discordapp.net/attachments/371759389889003532/959920494029733928/unknown.png https://media.discordapp.net/attachments/371759389889003532/959920494264598588/unknown.png |
21:01:33 | FromDiscord | <Elegantbeef> I havent said anything cause i dont really know, but i think `Time` is more meant for local time stamps and the sort and `DateTime` is for interacting with time from any source |
21:01:51 | FromDiscord | <hmmm> "For conversion from Time to DateTime, you have local(dt:DateTime) and utc(dt:DateTime)" |
21:02:04 | FromDiscord | <hmmm> ok beefy what do I want here, time to datetime or the other |
21:02:07 | FromDiscord | <Elegantbeef> Compiiler error morgan? |
21:02:18 | FromDiscord | <Elegantbeef> Ah nvm |
21:02:23 | FromDiscord | <Elegantbeef> `cv` is not mutable |
21:02:28 | FromDiscord | <morgan> ah |
21:02:32 | FromDiscord | <Elegantbeef> do `cv: var CommandVariant` |
21:02:46 | FromDiscord | <morgan> thanks |
21:02:54 | FromDiscord | <Elegantbeef> Your error message says that in it somewhere |
21:03:05 | FromDiscord | <Elegantbeef> If the tooling error message doesnt help refer to the compiler |
21:03:23 | * | jjido joined #nim |
21:04:00 | FromDiscord | <morgan> all it said that could be hinting at that was all the non-ref table types had var in the signature |
21:04:34 | FromDiscord | <Elegantbeef> I'm certain the mismatches will say `expected var CommandSubvariant but got CommandSubVariant` |
21:04:47 | FromDiscord | <morgan> nope |
21:04:53 | FromDiscord | <Elegantbeef> I know they do |
21:04:55 | FromDiscord | <Elegantbeef> Dont lie to me |
21:05:25 | FromDiscord | <morgan> https://media.discordapp.net/attachments/371759389889003532/959921515325980682/unknown.png |
21:05:36 | FromDiscord | <Elegantbeef> Compiler error mesage |
21:05:40 | FromDiscord | <Elegantbeef> COMPILER |
21:05:52 | FromDiscord | <morgan> oh you mean run it and see what that says? |
21:06:11 | FromDiscord | <Elegantbeef> Ah this is actually a rare case where it doesnt |
21:06:14 | FromDiscord | <Elegantbeef> I take it back |
21:06:42 | FromDiscord | <hmmm> beefy you can't take an all caps compiler back like that |
21:06:45 | FromDiscord | <morgan> lol |
21:06:48 | FromDiscord | <Elegantbeef> Too many overloads so it doesnt mention the var mismatch |
21:07:01 | * | vicfred quit (Quit: Leaving) |
21:07:19 | FromDiscord | <hmmm> it is expected you send a nice emoticon to take that back |
21:07:19 | FromDiscord | <Elegantbeef> Compiler still needs to explicitly state when the mismatch is due to immutabillity |
21:08:02 | FromDiscord | <morgan> yeah there are some error messages that have been very cryptic |
21:08:13 | FromDiscord | <morgan> i had one in another that was solved by adding a var |
21:08:18 | FromDiscord | <morgan> lemme see if it mentioned that |
21:08:21 | FromDiscord | <hmmm> anyway I decided Time is for boomers and i will local(Time) to the new and shiny DateTime, seems the only progressive thing to do 🧐 |
21:08:36 | FromDiscord | <morgan> just says it can't be assigned to |
21:08:48 | FromDiscord | <Elegantbeef> Feel free to write them down when you hit them, can encourage improving errors |
21:09:31 | FromDiscord | <morgan> would be cool if there's a way to get some error id so i could say error 69420 needs improving or whatever |
21:09:47 | FromDiscord | <Elegantbeef> I mean you can just say the type of error |
21:09:50 | FromDiscord | <Elegantbeef> There arent many |
21:10:25 | * | pro quit (Quit: pro) |
21:10:50 | FromDiscord | <morgan> ah ok |
21:11:07 | FromDiscord | <Elegantbeef> I do like the idea of improving errors, some are more difficult to improve and might cause people to be angry though |
21:11:34 | FromDiscord | <hmmm> angry people are my speciality, send them to me |
21:12:42 | FromDiscord | <morgan> yea it would be nice to have something as friendly as rust's error messages |
21:12:57 | FromDiscord | <morgan> one that trips me up is the error on tabs instead of spaces |
21:13:09 | FromDiscord | <Elegantbeef> What do you mean? |
21:13:14 | FromDiscord | <morgan> since i press tab to indent 4 spaces instead of pressing space some number of times |
21:13:25 | FromDiscord | <morgan> and it doesn't mention that it's because of a tab char |
21:13:36 | FromDiscord | <Elegantbeef> Well that's what a tab is |
21:13:39 | FromDiscord | <morgan> and vscode seems to have that as a file setting not a workspace setting |
21:13:57 | FromDiscord | <Elegantbeef> Your tab key doesnt generally insert actual tabs in most editors |
21:14:08 | FromDiscord | <Elegantbeef> Editors generally default to spaces funnily enough |
21:14:18 | FromDiscord | <morgan> no it works as a tab char in vscode |
21:14:24 | FromDiscord | <Elegantbeef> So many people are like "I hate spaces" but use spaces |
21:14:30 | FromDiscord | <Elegantbeef> No vscode defaults to spaces |
21:14:33 | FromDiscord | <morgan> unless you set it to insert spaces |
21:14:47 | FromDiscord | <morgan> ok well then some number of years ago i set it to use tabs |
21:14:54 | FromDiscord | <morgan> as a general setting |
21:14:58 | FromDiscord | <Elegantbeef> It defaults to spaces but also can detect indentation |
21:15:37 | FromDiscord | <Elegantbeef> Anyway i think for this given error a simple "Atleast one mismatch is due to immutable `insertSymbolHere`" |
21:15:52 | FromDiscord | <morgan> im just saying that when someone uses a tab character, it should give a more helpful error message |
21:16:02 | FromDiscord | <Elegantbeef> It gives a helpful one |
21:16:53 | FromDiscord | <morgan> oh now it does |
21:17:07 | FromDiscord | <morgan> a couple days ago it gave me something super confusing |
21:17:29 | FromDiscord | <Elegantbeef> Were you perhaps on an old nim version? |
21:17:42 | FromDiscord | <morgan> i did recently update vscode so it might've been using an old version of some extension |
21:18:17 | FromDiscord | <morgan> aha there's a weird error message when i run it |
21:18:25 | FromDiscord | <morgan> `...tempCodeRunnerFile.nim(1, 4) Error: expression expected, but found ':'` |
21:18:37 | FromDiscord | <morgan> https://media.discordapp.net/attachments/371759389889003532/959924843552321576/unknown.png |
21:18:38 | FromDiscord | <Elegantbeef> code? |
21:18:49 | FromDiscord | <Elegantbeef> You really hate me |
21:19:49 | FromDiscord | <Elegantbeef> all the way back to 0.13.0 the compiler gives a tabs not allowed\\ |
21:19:57 | FromDiscord | <Elegantbeef> Nim -v? |
21:20:29 | FromDiscord | <morgan> sent a code paste, see https://play.nim-lang.org/#ix=3U7T |
21:20:40 | FromDiscord | <morgan> sent a code paste, see https://play.nim-lang.org/#ix=3U7U |
21:21:18 | FromDiscord | <Elegantbeef> image.png https://media.discordapp.net/attachments/371759389889003532/959925517765734420/image.png |
21:21:38 | FromDiscord | <morgan> huh |
21:22:17 | FromDiscord | <Elegantbeef> Even with nimsuggest the first errors are about tabs |
21:22:44 | FromDiscord | <Elegantbeef> image.png https://media.discordapp.net/attachments/371759389889003532/959925876689109032/image.png |
21:27:54 | FromDiscord | <morgan> gotta figure out how i installed nim to try updating it |
21:28:58 | FromDiscord | <morgan> cos choosenim isn't resolving |
21:30:08 | FromDiscord | <morgan> nimble isn't either |
21:30:09 | FromDiscord | <morgan> wtf |
21:31:06 | FromDiscord | <morgan> maybe it's suggested fish command needs to be run when fish starts up because it's not storing it right |
21:31:59 | FromDiscord | <morgan> ok yeah up to date |
21:33:48 | FromDiscord | <morgan> maybe it's specific to the mac build |
21:34:02 | FromDiscord | <Elegantbeef> Is it the compiler giving that message or the tooling? |
21:34:50 | FromDiscord | <morgan> In reply to @MorganAlyssa "`...tempCodeRunnerFile.nim(1, 4) Error: expression": `nim compile --verbosity:0 --hints:off --run [file]` |
21:35:24 | FromDiscord | <Elegantbeef> Yea i get the proper error here |
21:35:54 | FromDiscord | <morgan> weird |
21:35:59 | FromDiscord | <morgan> anyways i gotta go |
21:36:13 | FromDiscord | <Elegantbeef> only difference is you're on mac |
21:39:10 | FromDiscord | <biz> can you use a variable inside of itself |
21:39:11 | FromDiscord | <biz> like |
21:39:22 | FromDiscord | <biz> the sequence inside of the sequence itself |
21:39:51 | FromDiscord | <biz> sent a code paste, see https://play.nim-lang.org/#ix=3U82 |
21:40:32 | FromDiscord | <Elegantbeef> The procedure would have to become a closure and the proc assigned after the construction |
21:43:35 | * | wyrd quit (Ping timeout: 240 seconds) |
21:50:48 | * | wyrd joined #nim |
21:55:29 | * | jjido quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
21:59:47 | * | yoyojambo joined #nim |
22:07:46 | * | jjido joined #nim |
22:27:47 | * | lumo_e quit (Ping timeout: 260 seconds) |
22:48:51 | * | jjido quit (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
23:01:01 | * | lumo_e joined #nim |
23:04:47 | * | zeus-supreme joined #nim |
23:04:59 | * | PMunch quit (Quit: leaving) |
23:06:50 | * | zeus-supreme1 quit (Read error: Connection reset by peer) |
23:27:09 | FromDiscord | <salt> is it possible to drop the `all_classes` table and somehow bind the idents (for bases) in the macro? I get errors when I use bindsym: https://play.nim-lang.org/#ix=3U8x |
23:28:50 | FromDiscord | <Elegantbeef> what do you mean exactly? |
23:31:29 | FromDiscord | <salt> sent a code paste, see https://play.nim-lang.org/#ix=3U8C |
23:32:36 | FromDiscord | <Elegantbeef> Where would `base`'s sym even exist? |
23:33:29 | FromDiscord | <salt> i assume it does after the previous macros are called and some classes exist --- that is, classes in the bases portion of the macro should be defined already |
23:36:34 | FromDiscord | <salt> maybe they don't, i don't really know how and when macros are expanded in the compiler or anything |
23:41:17 | FromDiscord | <Elegantbeef> They'e expanded chronologically |
23:41:49 | FromDiscord | <Elegantbeef> You can try bindsym with `{.experimental: "dynamicBindSym".}` but i dont think it'll work, could be wrong |
23:42:35 | FromDiscord | <Elegantbeef> you could use the macro cache and have the macro subscribe itself after generating |
23:42:56 | FromDiscord | <salt> i was thinking by the time i got to the `class K1(...)` the idents inside the `...` could be bound |
23:43:14 | FromDiscord | <salt> or looked up without a table |
23:43:14 | FromDiscord | <Elegantbeef> Well you could have `typed` |
23:43:37 | FromDiscord | <Elegantbeef> The right hand of the class macro could be typed |
23:43:47 | * | lumo_e quit (Ping timeout: 252 seconds) |
23:44:06 | FromDiscord | <Elegantbeef> But it means you do `class A, (C, B, A)` or similar |
23:44:47 | * | lumo_e joined #nim |
23:45:23 | FromDiscord | <salt> maybe `class K1 of C, B, A`? |
23:45:34 | FromDiscord | <salt> i don't know if that can be typed either |
23:45:40 | FromDiscord | <Elegantbeef> The issue there is that's not valid code |
23:45:48 | FromDiscord | <Elegantbeef> typed has to correct |
23:46:24 | FromDiscord | <Elegantbeef> Like i said though the macro can subscribe the type at the end |
23:47:03 | FromDiscord | <Elegantbeef> sent a code paste, see https://paste.rs/7CT |
23:47:29 | FromDiscord | <Elegantbeef> subscribe as the name implies adds `A` to a `macrocache.CacheSeq` |
23:47:56 | * | vicfred joined #nim |
23:48:48 | FromDiscord | <salt> i will try and experiment with this, thanks |
23:49:22 | FromDiscord | <Elegantbeef> Depending on how this is supposed to be used you could make all your operators on that type be macros that check the table for `val.eqIdent mySym` |
23:49:37 | FromDiscord | <Elegantbeef> Then use `mySym` for the operation |
23:50:58 | FromDiscord | <Elegantbeef> The cacheseq of course means you have a single instance of any name |
23:51:28 | FromDiscord | <salt> the use is for inheritable behaviors (that can redefine methods) in a widget-ful library -- truth is, i don't really need full C3 linearization, but it was easy enough to implement |
23:51:39 | FromDiscord | <Elegantbeef> Are you doing MI related inheritance? |
23:52:11 | FromDiscord | <salt> not MI, but TUI widgets |
23:52:56 | FromDiscord | <salt> attributes and methods will probably be a chainmap of tables from the mro |
23:53:11 | FromDiscord | <Elegantbeef> I do have to ask what's wrong with Nim's OOP? |
23:53:26 | FromDiscord | <salt> behaviors that overwrite methods aren't possible with single inheritance |
23:53:52 | FromDiscord | <Elegantbeef> An example of this? |
23:54:03 | FromDiscord | <Tuatarian> is there a good way to modify an iterator? |
23:54:18 | FromDiscord | <Elegantbeef> Copy it and modify it |
23:54:29 | FromDiscord | <Elegantbeef> Unless you mean something other than the source code |
23:54:33 | FromDiscord | <Tuatarian> that's unfortunate |
23:54:37 | FromDiscord | <Tuatarian> nope that's exactly what I meant |
23:54:45 | FromDiscord | <Tuatarian> I want to make walkDir just give me paths |
23:54:59 | FromDiscord | <Tuatarian> weird that this isn't a thing built in tbh |
23:55:41 | FromDiscord | <Elegantbeef> You know it can |
23:55:42 | FromDiscord | <Elegantbeef> You want to iterate only directories? |
23:56:11 | FromDiscord | <Elegantbeef> Dont know if it'll work the same but `walkDirRec(path, yieldFiter: {pcDir}, folloFilter ={})` might work |
23:56:21 | FromDiscord | <Elegantbeef> followFilter\ |
23:56:31 | FromDiscord | <Elegantbeef> Assuming you want only directories |
23:56:46 | FromDiscord | <Elegantbeef> also `yieldFilter = {pcDir}` |
23:56:46 | FromDiscord | <Elegantbeef> I dont know what "paths" means exactly |
23:57:18 | FromDiscord | <Tuatarian> like the path to the fille |
23:57:33 | FromDiscord | <Elegantbeef> So you just dont want the path component? |
23:57:39 | FromDiscord | <Tuatarian> I want only the pth component |
23:57:45 | FromDiscord | <Tuatarian> don't need the kind component |
23:57:56 | FromDiscord | <Elegantbeef> the kind is the path component |
23:58:08 | FromDiscord | <Elegantbeef> `for (_, path) in walkDir("someDir")` |
23:58:10 | FromDiscord | <Elegantbeef> That's why it doesnt exist |
23:58:31 | FromDiscord | <Elegantbeef> Might even be able to do `for _, path in walkDir("someDir")` |
23:58:44 | FromDiscord | <Tuatarian> now I'm more confused lmao |
23:58:51 | FromDiscord | <Tuatarian> it gives a tupe of (kind, path) right? |
23:58:54 | FromDiscord | <Tuatarian> I just want the path |
23:58:55 | FromDiscord | <Elegantbeef> What? |
23:59:05 | FromDiscord | <Elegantbeef> I just showed you how to get just the path |
23:59:21 | FromDiscord | <Tuatarian> ohh I see |
23:59:29 | FromDiscord | <Tuatarian> is there any way to make that work in toSeq? |
23:59:36 | FromDiscord | <Tuatarian> or would I use collect() for this? |
23:59:45 | FromDiscord | <Elegantbeef> I question why you're using toseq 😛 |