00:16:02 | * | disso_peach quit (Quit: Leaving) |
00:19:01 | * | disso_peach joined #nim |
00:35:30 | FromDiscord | <!&luke> sent a code paste, see https://play.nim-lang.org/#ix=49pw |
00:35:57 | FromDiscord | <!&luke> (edit) "https://play.nim-lang.org/#ix=49pw" => "https://play.nim-lang.org/#ix=49px" |
00:36:25 | FromDiscord | <Elegantbeef> Something is a jobject |
00:36:27 | FromDiscord | <!&luke> (edit) "https://play.nim-lang.org/#ix=49px" => "https://play.nim-lang.org/#ix=49py" |
00:36:43 | FromDiscord | <!&luke> well what should it be |
00:37:00 | FromDiscord | <Elegantbeef> `echo redditJsonData["data"]["url_overidden_by_dest"].kind` |
00:37:15 | FromDiscord | <Elegantbeef> if you're `getStr` on it it should be a `JString` |
00:37:26 | FromDiscord | <!&luke> In reply to @Elegantbeef "`echo redditJsonData["data"]["url_overidden_by_dest": it should be a string or null |
00:37:27 | FromDiscord | <Elegantbeef> also `redditJsonData["data"]["url_overridden_by_dest"].getStr() in ["", "null"]` |
00:37:41 | FromDiscord | <Elegantbeef> You're getting an error from calling something on a jobject |
00:37:47 | FromDiscord | <Elegantbeef> if you look at your stack it'll show your exactly where |
00:38:16 | FromDiscord | <!&luke> In reply to @Elegantbeef "if you look at": what |
00:38:22 | FromDiscord | <Elegantbeef> Look at the entire stack trace |
00:38:25 | FromDiscord | <Elegantbeef> It'll show the callsite |
00:38:32 | FromDiscord | <!&luke> no... |
00:38:41 | FromDiscord | <Elegantbeef> Yes it does |
00:38:50 | FromDiscord | <!&luke> oh its on line 9 |
00:38:57 | FromDiscord | <Elegantbeef> Run the program again and show the output |
00:39:03 | FromDiscord | <!&luke> which is line with if |
00:39:05 | FromDiscord | <Elegantbeef> Nevermind |
00:39:16 | FromDiscord | <!&luke> (edit) "if" => "`if`" |
00:40:58 | FromDiscord | <Elegantbeef> The issue is likely that the json from the nested index is a jobject and you need a specific field from it |
00:41:17 | FromDiscord | <!&luke> bro its a string |
00:41:28 | FromDiscord | <Elegantbeef> It's kind is jstring? |
00:41:59 | FromDiscord | <!&luke> https://0x0.st/opt5.png |
00:42:07 | FromDiscord | <!&luke> it should be |
00:42:32 | FromDiscord | <Elegantbeef> Well ensure each node in that tree you're indexing is an object |
00:42:43 | FromDiscord | <Elegantbeef> either `data` isnt an object or the last node isnt |
00:42:56 | FromDiscord | <!&luke> hmm give me a second |
00:44:18 | FromDiscord | <!&luke> ahh i see the problem |
00:44:26 | FromDiscord | <!&luke> data is in a nameless array |
00:44:47 | FromDiscord | <!&luke> how could i get the first element in that array? |
00:45:36 | FromDiscord | <Elegantbeef> How do you normally get an element in an array |
00:45:48 | FromDiscord | <!&luke> ive never done it in json |
00:46:38 | FromDiscord | <!Patitotective> indexing |
00:46:49 | FromDiscord | <!Patitotective> like a normal array |
00:47:10 | FromDiscord | <!&luke> can u send the example code |
00:47:29 | FromDiscord | <!Patitotective> `node[0]` (?) |
00:47:32 | FromDiscord | <Elegantbeef> https://nim-lang.org/docs/json.html#%5B%5D%2CJsonNode%2Cint |
00:47:42 | FromDiscord | <Elegantbeef> Here comes the airplane |
00:47:50 | FromDiscord | <!&luke> In reply to @Patitotective "`node[0]` (?)": oh thx |
00:47:55 | FromDiscord | <!&luke> In reply to @Elegantbeef "Here comes the airplane": lmaoooo |
00:48:35 | FromDiscord | <Elegantbeef> Like if you went to the json docs and typed index after my comment you'd have found it |
00:49:29 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "Like if you went": docs? what is that? |
00:49:36 | FromDiscord | <Elegantbeef> No clue |
00:49:44 | FromDiscord | <Elegantbeef> RTFM is too hard |
00:50:18 | FromDiscord | <!Patitotective> it would be really cool if there was a !rtfm command↵so you can do `!rtfm std/json` |
00:51:34 | * | wallabra quit (Ping timeout: 268 seconds) |
00:51:50 | FromDiscord | <Elegantbeef> Yea i dont know, i just wish people would take 30 seconds to look at the docs for the library they're trying to use |
00:53:42 | NimEventer | New thread by Turmoil: Hot reload & Alternatives - Mac Support (ARM and x86), see https://forum.nim-lang.org/t/9429 |
00:57:38 | FromDiscord | <!&luke> In reply to @Elegantbeef "Like if you went": what makes this funnier is that i have std/json docs open in a new tab |
00:57:50 | FromDiscord | <!&luke> (edit) "new" => "different" |
02:09:35 | NimEventer | New Nimble package! ndup - Near-Duplicate File Detection, see https://github.com/c-blake/ndup |
02:11:50 | * | arkurious quit (Quit: Leaving) |
02:34:58 | FromDiscord | <! Nilts> Is there a code scanner for nim? |
02:36:28 | FromDiscord | <Rika> "code scanner"? |
02:36:45 | FromDiscord | <! Nilts> In reply to @Rika ""code scanner"?": code analysis, kinda like CodeQl |
02:37:00 | FromDiscord | <Rika> dont think so |
02:39:28 | * | wallabra joined #nim |
02:40:32 | FromDiscord | <!Patitotective> i think the lexer is done :]↵https://github.com/Patitotective/kdl-nim/blob/main/src/kdl/new_lexer.nim |
02:43:10 | FromDiscord | <!Patitotective> now gotta make the parser |
02:43:20 | FromDiscord | <Elegantbeef> Is it better than using regex? 🙂 |
02:43:31 | FromDiscord | <!Patitotective> indeed |
02:43:59 | FromDiscord | <!Patitotective> oh, and i need to bench mark std/unicode and `openarray[char]`-unicode |
02:44:02 | * | LuxuryMode quit (Quit: Connection closed for inactivity) |
02:44:02 | FromDiscord | <!Patitotective> (edit) "bench mark" => "benchmark" |
02:47:04 | FromDiscord | <Elegantbeef> Seems pointless |
02:47:22 | FromDiscord | <Elegantbeef> If you use `toOpenarray` you will be faster |
02:48:10 | FromDiscord | <!Patitotective> okeeeeeeeeeeeeeeeeeeeeey |
02:50:43 | FromDiscord | <!Patitotective> uuuh, i need to use regex to make the replacements because i dont want to replace string for openarray in the return type |
02:52:02 | FromDiscord | <Elegantbeef> What? |
02:52:36 | FromDiscord | <!Patitotective> i need to replace `proc foo(arg: string): string` for `proc foo(arg: openArray[char]): string`, right? |
02:55:23 | FromDiscord | <!Patitotective> `\\(((\w(: ?\w)?( ?= ?\w)?)(, )?)+\)` :[ |
02:56:27 | FromDiscord | <Elegantbeef> Ah i reread it like 10 times to understand |
02:56:52 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "The issue is the": . |
03:26:03 | FromDiscord | <tandy> `var newListen = listen`↵listen is a ref object, how do i only copy by value? |
03:27:20 | FromDiscord | <Elegantbeef> You want to copy it's fields? |
03:27:32 | FromDiscord | <Elegantbeef> Or do you want the internal struct |
03:30:40 | FromDiscord | <tandy> fields |
03:33:08 | FromDiscord | <tandy> oh deepCopy |
03:39:08 | FromDiscord | <Elegantbeef> Yep |
04:06:36 | * | wallabra quit (Quit: ZNC 1.8.2 - https://znc.in) |
04:08:27 | * | wallabra joined #nim |
06:47:02 | * | PMunch joined #nim |
06:48:59 | * | crem quit (Read error: Connection reset by peer) |
06:52:22 | * | crem joined #nim |
06:58:14 | FromDiscord | <d4rckh> easiest way to add to pointers in nim? |
06:58:20 | FromDiscord | <d4rckh> (edit) "to" => "2" |
07:00:15 | FromDiscord | <Rika> The easiest way is to not |
07:00:25 | FromDiscord | <Rika> What are you doing exactly to warrant adding pointers |
07:00:34 | FromDiscord | <d4rckh> parsing an object file |
07:01:00 | FromDiscord | <Rika> I don’t know why that would warrant adding pointers |
07:01:39 | FromDiscord | <d4rckh> i want to get to the relocations of each section |
07:01:47 | PMunch | Just pushed a new version of Notificatcher, now supporting close notifications and pid in format :) https://github.com/pmunch/notificatcher |
07:01:51 | FromDiscord | <d4rckh> and the section headers contain a pointer to them |
07:02:16 | PMunch | All these features essentially just makes it easier to use other graphical programs to actually show the notifications |
07:02:48 | FromDiscord | <d4rckh> sent a code paste, see https://play.nim-lang.org/#ix=49qQ |
07:03:00 | FromDiscord | <d4rckh> sent a code paste, see https://play.nim-lang.org/#ix=49qR |
07:03:12 | FromDiscord | <Rika> If you really need to then https://github.com/kaushalmodi/ptr_math |
07:03:17 | FromDiscord | <d4rckh> but im getting the wrong values for the relocation entry 🤔 |
07:03:21 | PMunch | @d4rckh, you essentially just cast both pointers to int and then add those together |
07:03:23 | FromDiscord | <Rika> But I think there’s a better way |
07:04:18 | FromDiscord | <d4rckh> sent a code paste, see https://play.nim-lang.org/#ix=49qS |
07:04:18 | FromDiscord | <d4rckh> dont know the values i get seem to be wrong |
07:04:58 | FromDiscord | <d4rckh> sent a code paste, see https://play.nim-lang.org/#ix=49qT |
07:05:55 | * | m5zs7k quit (Ping timeout: 252 seconds) |
07:08:35 | FromDiscord | <d4rckh> argh. found the issue |
07:08:37 | FromDiscord | <d4rckh> https://media.discordapp.net/attachments/371759389889003532/1015156277099376671/unknown.png |
07:08:40 | FromDiscord | <d4rckh> forgot to add packed to my structs |
07:10:14 | * | m5zs7k joined #nim |
07:11:55 | * | rockcavera quit (Remote host closed the connection) |
08:00:02 | * | Vladar joined #nim |
08:26:40 | FromDiscord | <Tuatarian> not sure why I'm getting this error |
08:26:48 | FromDiscord | <Tuatarian> sent a code paste, see https://play.nim-lang.org/#ix=49r7 |
08:26:55 | FromDiscord | <Tuatarian> this happens with even just "Hello World" |
08:27:05 | FromDiscord | <Tuatarian> (edit) |
08:27:25 | madprops | how are you compiling the program? |
08:27:27 | FromDiscord | <Elegantbeef> nim -v? |
08:27:37 | FromDiscord | <Tuatarian> (edit) |
08:27:46 | FromDiscord | <Tuatarian> compiling nim c --gc:orc -r renderer.nim |
08:27:55 | FromDiscord | <Tuatarian> 1.7.1 |
08:28:04 | FromDiscord | <Elegantbeef> Do you have any static arrays? |
08:28:16 | FromDiscord | <Tuatarian> yes, but even if I replace the whole program with Hello World this happens |
08:28:29 | FromDiscord | <enthus1ast> sounds like a cache issue to me,↵try to use -f↵(@Tuatarian) |
08:28:34 | FromDiscord | <Tuatarian> static array meaning array as opposed to seq right? |
08:28:34 | FromDiscord | <Rika> Then you probably got a borked devel version? |
08:28:59 | FromDiscord | <Elegantbeef> No static means compile time constant |
08:29:30 | FromDiscord | <Tuatarian> no compile time arrays |
08:30:08 | FromDiscord | <Tuatarian> In reply to @enthus1ast "sounds like a cache": didn't seem to do anything |
08:30:36 | FromDiscord | <Elegantbeef> Update your compiler or try 1.6.6 |
08:30:45 | FromDiscord | <Tuatarian> same thing for 1.6.6 |
08:33:02 | PMunch | `rm -rf ~/.cache/nim/project_d` |
08:33:18 | PMunch | I guess that would be renderer_d in your case |
08:35:51 | FromDiscord | <Tuatarian> using `rm -recurse -force ~/.cache/nim/renderer_d` |
08:35:52 | FromDiscord | <Tuatarian> path doesn't exist |
08:36:04 | FromDiscord | <Tuatarian> wait of course it doesn't lmao |
08:36:07 | FromDiscord | <Tuatarian> where is the nim cache on windows |
08:36:33 | FromDiscord | <enthus1ast> i meant\:↵nim c -f yourfile.nim↵(@Tuatarian) |
08:37:39 | FromDiscord | <Tuatarian> In reply to @enthus1ast "i meant\: nim c": same issue |
08:38:11 | FromDiscord | <Elegantbeef> `nim c --nimCache:"somefolderhere" -r yourFile.nim` |
08:38:35 | PMunch | Just pushed deriveable types to GitHub: https://github.com/PMunch/deriveables |
08:38:46 | FromDiscord | <Elegantbeef> Congrats |
08:38:51 | FromDiscord | <Elegantbeef> I still dont understand a lick of it |
08:38:56 | PMunch | Haha |
08:39:01 | PMunch | You even helped in writing it :P |
08:39:12 | FromDiscord | <Elegantbeef> I know |
08:40:56 | PMunch | The goal is to be able to take a procedure and tag it with `{.route: "GET users/@id/posts".}` for example and then use deriveable types to create a proc which only takes `Request` and calls to whatever arguments you have and to use autotemplates to generate the output based on whatever type you return. |
08:41:10 | FromDiscord | <ECHO> anyone else having problems with VSC's code completion? |
08:41:15 | FromDiscord | <Tuatarian> In reply to @Elegantbeef "`nim c --nimCache:"somefolderhere" -r": same issue |
08:41:19 | FromDiscord | <ECHO> yes i just joined to ask this |
08:41:28 | FromDiscord | <Elegantbeef> Use nimsaems extension |
08:41:39 | FromDiscord | <Elegantbeef> If that doesnt help ensure you set the project in your config |
08:41:44 | FromDiscord | <Elegantbeef> If that doesnt help, welcome to Nim tooling |
08:42:02 | FromDiscord | <Elegantbeef> tuatara sounds like something wrong with your compiler |
08:42:21 | FromDiscord | <ECHO> could this be the problem? https://media.discordapp.net/attachments/371759389889003532/1015179863482699816/unknown.png |
08:42:36 | FromDiscord | <Elegantbeef> Change the configuration to not use nimlangserver |
08:43:19 | FromDiscord | <Elegantbeef> https://github.com/saem/vscode-nim#nim-lanugage-server-integration-experimental ensure you dont have this set |
08:43:59 | FromDiscord | <Elegantbeef> I'm now reminded of earlier today realising "Oh shit my lsp isnt running" and spending 20 minutes to learn some update broke how kate's home path is evaluated |
08:45:03 | FromDiscord | <ECHO> didnt KDE kill kate? |
08:45:11 | FromDiscord | <Elegantbeef> Nope |
08:45:18 | FromDiscord | <Elegantbeef> They've made it better and better |
08:45:24 | FromDiscord | <Elegantbeef> It's a full on code editor experience now |
08:45:35 | FromDiscord | <ECHO> ig ill check if kate works |
08:45:41 | FromDiscord | <enthus1ast> Even with this i have some troubles btw (i accepted for now that the nim vscode tooling is mediocre) |
08:45:57 | FromDiscord | <Elegantbeef> image.png https://media.discordapp.net/attachments/371759389889003532/1015180769678852136/image.png |
08:45:58 | FromDiscord | <Elegantbeef> Full on code editor here, it's magic |
08:46:15 | FromDiscord | <ECHO> is that visual studio? |
08:46:20 | FromDiscord | <Elegantbeef> That's Kate |
08:46:25 | FromDiscord | <ECHO> ah |
08:46:41 | FromDiscord | <Elegantbeef> Kate does require Nimlsp to be installed |
08:46:51 | FromDiscord | <ECHO> i havent looked into kde programs since i switched from plasma to i3 |
08:47:04 | FromDiscord | <Elegantbeef> Yea i dont use KDE but still use kate |
08:47:06 | FromDiscord | <Elegantbeef> It's a pretty good editor |
08:47:53 | PMunch | Who'da thunk Kate would become a proper editor |
08:48:08 | FromDiscord | <Elegantbeef> Really no one |
08:48:09 | PMunch | Last time I used it it was merely a slightly fancy notepad |
08:48:17 | FromDiscord | <Elegantbeef> Yea same |
08:48:43 | FromDiscord | <Elegantbeef> I was like "Why the hell does this toy editor have LSP support" opened and it's a fully usable text editor now |
08:48:47 | FromDiscord | <Elegantbeef> And gets better each update |
08:49:02 | FromDiscord | <Elegantbeef> There are some oddities like multi-cursor |
08:49:14 | FromDiscord | <Elegantbeef> I do not know if there is way to do multicursor with only the keyboard |
08:49:23 | FromDiscord | <Elegantbeef> So multi line editing is not fun |
08:52:57 | PMunch | Wait, you need to involve the mouse to do multicursor? |
08:53:23 | FromDiscord | <Elegantbeef> Yea cause my DE was blocking that input apparently |
08:53:49 | FromDiscord | <Elegantbeef> I looked into again now and yea there a key shortcut but my DE was blocking it so i figured it didnt do anything |
08:54:25 | PMunch | Haha, sounds like you have configured your DE or Kate poorly :P |
08:54:37 | FromDiscord | <Elegantbeef> It's default settings for both |
08:54:41 | FromDiscord | <Elegantbeef> The DE just sucks |
08:55:13 | PMunch | What're you using at the moment? |
08:55:20 | FromDiscord | <Elegantbeef> Gnome |
08:55:34 | FromDiscord | <Elegantbeef> Misclicked on install months ago and havent got to changing it |
08:55:41 | PMunch | Ah, haven't used Gnome in ages |
08:55:43 | PMunch | Haha :P |
08:55:53 | PMunch | What where you meaning to install? |
08:56:20 | FromDiscord | <Elegantbeef> I was using xfce before |
08:56:47 | FromDiscord | <Elegantbeef> But now i'm using a wayland DE so feel like i should stay here |
08:57:07 | FromDiscord | <Elegantbeef> Though I dislike parts of all TWM so i just cry |
08:58:28 | FromDiscord | <Elegantbeef> But i've had a few issues with wayland now so X might be where it's at |
09:02:01 | FromDiscord | <aruZeta> i like TWM since they are rly simple |
09:02:26 | FromDiscord | <Elegantbeef> I like them a lot but i dislike how a lot of them operate |
09:03:33 | FromDiscord | <aruZeta> tbh I usually don't even have more than 1 window in each workspace |
09:03:39 | FromDiscord | <Elegantbeef> I just want each monitor to have a carousel that i can easily iterate through on each monitor |
09:04:07 | FromDiscord | <aruZeta> so I don't need all the clutter and unnecessary stuff DE's bring |
09:04:12 | FromDiscord | <Elegantbeef> My "wm" did that, but X is so tedious i dont think it's properly usable |
09:04:37 | FromDiscord | <aruZeta> In reply to @Elegantbeef "I just want each": what would the carousel have? |
09:04:54 | FromDiscord | <aruZeta> the currently using workspaces? |
09:04:56 | FromDiscord | <Elegantbeef> It's just a workspace like in i3wm |
09:05:18 | FromDiscord | <Elegantbeef> But instead of tags or numbers you just move up/down a stack of your workspaces |
09:05:39 | FromDiscord | <Shiba> i3 is |
09:05:45 | FromDiscord | <Shiba> goot |
09:05:55 | FromDiscord | <aruZeta> hmmm |
09:06:05 | FromDiscord | <Elegantbeef> https://streamable.com/hottcl |
09:06:58 | FromDiscord | <aruZeta> have you tried sway? |
09:07:10 | FromDiscord | <Elegantbeef> The idea is each monitor just has a linear groups of monitors you can just hit like `super + 1 + up` to go up on monitor 1 |
09:07:16 | FromDiscord | <Elegantbeef> No it's not dynamic tiling |
09:08:16 | FromDiscord | <Elegantbeef> Manual tiling window managers make 0 sense to me |
09:08:56 | FromDiscord | <Elegantbeef> "You know it really sucks that windows appear randomly and take up a random amount of space, how about we share it equally.... but you have to manually alternate directions when opening a window" |
09:09:39 | PMunch | Damn, just tried Vosk to transcribe a small part of audio I just mumbled into my headset outside. And it worked perfectly |
09:10:04 | FromDiscord | <Elegantbeef> Nice |
09:10:34 | FromDiscord | <Elegantbeef> Home automation related? |
09:11:21 | PMunch | Not really.. I've been thinking of setting up a small system which watches a folder, then runs OCR and audio transcription on stuff in the folder and generates Notable compatible markdown files that attaches the original file with the transcript |
09:11:42 | PMunch | That way I can take audio notes, do screenshots, etc. and have them all searchable :) |
09:12:02 | FromDiscord | <Elegantbeef> Ah |
09:12:10 | PMunch | But Vosk has a microphone version as well, that streams the results, so it could definitely be used for home-automation.. |
09:12:20 | PMunch | Now I kinda want to do that as well |
09:12:33 | FromDiscord | <Elegantbeef> Except the model is 50mb 😛 |
09:12:46 | PMunch | 50Mb is tiny |
09:12:52 | PMunch | They have a 16Gb model as well :P |
09:13:30 | FromDiscord | <Elegantbeef> Anyway after that TWM rambling, i'm outta here 😄 |
09:13:44 | PMunch | That's another of my projects, a window manager which does a non-overlapping layout |
09:14:12 | PMunch | Basically all windows open at the size they want, but the WM makes sure they can't overlap at all |
09:15:06 | PMunch | So it places windows cleverly to avoid that, and allows you to expand a window to take up more space |
09:18:20 | FromDiscord | <sealmove> The UI in gnome/kde/windows is getting good though. You can tile windows and everything |
09:20:52 | PMunch | Are they keyboard shortcuts for that stuff in Windows? |
09:20:59 | FromDiscord | <sealmove> yup |
09:21:02 | FromDiscord | <sealmove> nowdays yes |
09:21:24 | FromDiscord | <aruZeta> win+arrow key you mean? |
09:21:36 | FromDiscord | <sealmove> and also wsl has great intergation (for instance with vscode) |
09:21:46 | FromDiscord | <srozb> Hey, I'm having hard time to understand how could I pass the cstring to proc to have it overwritten by callee. I've created minimal example and I really need to pass a pointer to cstring somehow because of compatibility with the C function I'm interfacing. Could anybody point me to a good way to do this? https://media.discordapp.net/attachments/371759389889003532/1015189784672616499/unknown.png |
09:21:47 | FromDiscord | <sealmove> so you can have a real hybrid of windows and linux |
09:24:10 | FromDiscord | <sealmove> In reply to @srozb "Hey, I'm having hard": `ptr cstring` |
09:24:14 | FromDiscord | <srozb> of course I've googled first and read good explanation by PMunch here: https://forum.nim-lang.org/t/8179 still don't understand why this is not working |
09:24:33 | FromDiscord | <sealmove> `var` gives you gc-managed memory |
09:24:39 | FromDiscord | <srozb> oh |
09:25:23 | FromDiscord | <sealmove> you `system.alloc` just like you use `malloc` in c |
09:25:29 | FromDiscord | <sealmove> (edit) "you" => "use" |
09:25:53 | PMunch | Why do people insist on sharing screenshots.. |
09:26:10 | PMunch | I mean there's a "Share to ix" button right there, in the screenshot! |
09:26:12 | FromDiscord | <srozb> well this way you don't need to open another tab clicking |
09:26:20 | PMunch | Oh yes I do.. |
09:26:27 | FromDiscord | <srozb> https://play.nim-lang.org/#ix=49rp |
09:26:33 | PMunch | On IRC screenshots just come through as links |
09:26:49 | FromDiscord | <srozb> ok, sorry for that |
09:27:03 | FromDiscord | <sealmove> you can also wrap code in "\`\`\`" (in discord at least) |
09:27:21 | FromDiscord | <sealmove> (edit) ""\`\`\`"" => ""\`\`\`nim"" |
09:27:23 | PMunch | And even if you want to have it inline in the chat, paste a code block, at least that way people can edit and share the results back to you without having to type the entire thing in again |
09:27:34 | FromDiscord | <srozb> ok ok, got it |
09:27:45 | FromDiscord | <sealmove> PMunch how does editing work in IRC? |
09:28:03 | FromDiscord | <sealmove> I remember ppl complaining for discord edits, that in IRC they resend messages |
09:30:11 | FromDiscord | <srozb> but if I pass a pointer it will be immutable and I won't be able to assign a value there, right? how should I declare the proc arguments? |
09:30:47 | FromDiscord | <sealmove> actually judging from your example, you don't have to manage the memory yourself, do you? |
09:30:52 | PMunch | @sealmove, yes when you edit things there is a small message that says "edit: <changes>" |
09:30:57 | FromDiscord | <sealmove> Your cast is just wrong |
09:31:12 | PMunch | Yeah that cast won't work |
09:31:12 | FromDiscord | <sealmove> In reply to @PMunch "<@173424250319929344>, yes when you": oh like a diff? |
09:31:24 | PMunch | And I don't think you can assign anything to a var cstring |
09:31:47 | FromDiscord | <sealmove> but it can be a pointer |
09:31:55 | FromDiscord | <sealmove> which can be pointed to a new cstring |
09:31:58 | PMunch | Essentially a var cstring is a ptr ptr char, so what you're doing by assigning is creating a new pointer |
09:32:20 | PMunch | What you want to do is copyMem the data into the original string |
09:33:22 | FromDiscord | <srozb> I see, I thought that cstring is already a pointer to a place where I can freely write unless the buffer is not too small |
09:33:37 | FromDiscord | <srozb> and therefore I could simply pass it (without any cast) |
09:33:56 | PMunch | Well you can, the error is actually in the assignment |
09:34:08 | PMunch | Well that and casting to a string |
09:34:13 | PMunch | Gotta go, lunch |
09:34:19 | FromDiscord | <sealmove> bon appetit! |
09:34:27 | FromDiscord | <srozb> ok, thank you and enjoy your meal\ |
09:43:50 | FromDiscord | <sealmove> @srozb how about this? cstring |
09:44:01 | FromDiscord | <sealmove> (edit) "cstring" => "https://play.nim-lang.org/#ix=49ru" |
09:46:07 | FromDiscord | <sealmove> sent a code paste, see https://play.nim-lang.org/#ix=49rv |
10:16:34 | madprops | hello nim |
10:18:31 | PMunch | Hello |
10:23:24 | PMunch | @srozb, do you need for the callee proc to take a cstring argument? |
10:24:34 | FromDiscord | <srozb> yes because I want to remain the same API as it was used by C library, so you can simply compile a dll and replace the original |
10:24:56 | FromDiscord | <srozb> this worked for me |
10:24:59 | FromDiscord | <srozb> sent a code paste, see https://play.nim-lang.org/#ix=49rG |
10:25:22 | FromDiscord | <srozb> though I rather use string.len instead of sizeof |
10:25:32 | PMunch | Just make cst a string instead |
10:25:42 | FromDiscord | <srozb> that's right |
10:25:42 | PMunch | And then use cst.cstring in the copyMem |
10:25:46 | FromDiscord | <srozb> that what I did |
10:25:57 | FromDiscord | <srozb> work like a charm |
10:26:23 | PMunch | This is what I'd do: https://play.nim-lang.org/#ix=49rH |
10:27:25 | PMunch | Keep in mind though that you never set outString.len, so it is still 1024 |
10:27:52 | PMunch | And Nim strings can include 0 characters, while C strings can't |
10:28:28 | FromDiscord | <srozb> This is exactly what I did, as for the buffer length I already have a function that recommends the max length that I need to allocate - this is also a C lib design |
10:29:11 | FromDiscord | <srozb> I'm rewriting the whole PE library to pare executables |
10:29:31 | PMunch | Something like this can be used to properly set the string length: https://play.nim-lang.org/#ix=49rI |
10:29:55 | PMunch | PE library? |
10:30:24 | FromDiscord | <srozb> yep, portable executable parsing |
10:30:50 | FromDiscord | <srozb> I really wanted to grep the whole windows/system32 directory looking for specific import or export |
10:31:18 | FromDiscord | <srozb> so I though I could write a tool for myself and have fun learning nim |
10:32:14 | FromDiscord | <srozb> at first I simply wrapped the library and it worked perfect on linux and mac but had strange deadlocks on Windows |
10:33:07 | FromDiscord | <srozb> debugger showed me that cpu was inside the infinite loop while the cygwins strdup() was called (probably the loop was somewhere inside cygwin implementation of malloc/calloc) |
10:33:51 | FromDiscord | <srozb> so I ended up rewriting the whole library to nim and actually i'm almost done |
10:34:05 | FromDiscord | <srozb> now I don't need cygwin1.dll or other libs |
10:34:17 | FromDiscord | <srozb> that's my story |
10:35:01 | PMunch | Huh, that's actually pretty cool |
10:35:18 | PMunch | You should release it and post it to This Month With Nim |
10:36:41 | FromDiscord | <srozb> sure, it's on the github but definately not ready to show as the code is messy and not documented |
10:37:04 | FromDiscord | <srozb> as soon as I'll polish the edges I will publish info |
10:37:14 | PMunch | I mean if it's messy but it works |
10:38:06 | FromDiscord | <Rika> pmunch do you perhaps know of an implementation of a trie data structure in nim |
10:39:37 | FromDiscord | <srozb> sent a code paste, see https://play.nim-lang.org/#ix=49rN |
10:41:14 | PMunch | Pfft, you have better test coverage than my projects combined. I'd say ship it :P |
10:42:26 | PMunch | @Rika, there's this: https://github.com/status-im/nim-eth-trie |
10:42:42 | FromDiscord | <Rika> dont think thats exactly what i want, ive seen it too |
10:48:26 | FromDiscord | <aruZeta> rounded alignment patterns do look nice eh https://media.discordapp.net/attachments/371759389889003532/1015211593899987044/unknown.png |
10:49:14 | PMunch | @aruZeta, but how well do they scan? |
10:49:22 | FromDiscord | <aruZeta> perfectly |
10:49:28 | PMunch | The circle as well? |
10:49:35 | FromDiscord | <aruZeta> ye |
10:49:46 | FromDiscord | <aruZeta> at least the qr scanner I have does |
10:50:05 | PMunch | Huh |
10:50:14 | FromDiscord | <Rika> scans perfectly for me too |
10:50:27 | FromDiscord | <Rika> you have to know that qr scanners are surprisingly resilient to funky stuff |
10:50:39 | FromDiscord | <aruZeta> ive seen them like that before, and someone asked me to implement it |
10:50:49 | FromDiscord | <Rika> you could prolly even curve the qr data itself and itll still scan |
10:50:55 | FromDiscord | <aruZeta> yes |
10:51:20 | FromDiscord | <aruZeta> https://media.discordapp.net/attachments/371759389889003532/1015212326296768612/unknown.png |
10:51:48 | FromDiscord | <aruZeta> that was what the one asking to implement the rounded patterns showed me |
10:52:17 | FromDiscord | <aruZeta> and yh that qr works |
11:00:33 | PMunch | Yeah they are surprisingly resiliant (fun fact, the center image isn't a supported part of QR codes, it's just obscuring data, but it still works because of redundancy) |
11:01:24 | PMunch | Annoyingly this means that most QR codes just use some kind of link shortener to make the code less noisy, so it's not always obvious what it links to |
11:01:41 | PMunch | I wonder if there's a speed penalty to it though |
11:02:11 | FromDiscord | <aruZeta> In reply to @PMunch "Yeah they are surprisingly": yh, it works because of the damn ECC |
11:02:16 | PMunch | I've definitely had more trouble with QR codes that have say an image or some other funkiness to them when they are also damaged or obscured by dirt |
11:02:38 | FromDiscord | <aruZeta> yep it affects speed |
11:03:37 | FromDiscord | <aruZeta> since the scanner will need to read the ECC which is the last part of the data and calculate some polynomials to "fix" the missing data codewords |
11:47:18 | FromDiscord | <Forest [She/Her]> Question, what's the correct way to check if an object is not of MyTypeChildOne or MyTypeChildTwo? |
11:49:32 | FromDiscord | <Forest [She/Her]> Is it `if object of MyTypeChildOne or object of MyTypeChildTwo:`? |
11:49:48 | FromDiscord | <Forest [She/Her]> (edit) "Is it `if object ... of" added "not" |
11:49:58 | FromDiscord | <Forest [She/Her]> (edit) "Is it `if object not of MyTypeChildOne or object ... of" added "not" |
11:50:58 | FromDiscord | <Rika> `not of and not of` or `not (of or of)`, gotta love demorgan |
11:51:12 | FromDiscord | <Rika> oh, i noticed this too |
11:51:25 | FromDiscord | <Rika> `object not of MyTypeChildOne` is invalid, i think it has to be `not object of MyTypeChildOne` |
11:51:36 | FromDiscord | <Forest [She/Her]> Oh yeah |
11:51:42 | FromDiscord | <Forest [She/Her]> That should really be a thing ngl |
12:15:16 | FromDiscord | <aruZeta> expected that `notof` existed, like `notin` does |
12:18:17 | FromDiscord | <Forest [She/Her]> It doesn't |
12:24:06 | FromDiscord | <Phil> In reply to @aruZeta "expected that `notof` existed,": TIL, and I will immediately forget that this exists because it seems nonintuitive |
12:41:31 | FromDiscord | <Forest [She/Her]> Lmao fair |
12:48:02 | * | ggsx joined #nim |
12:51:01 | FromDiscord | <Forest [She/Her]> In reply to @Rika "`not of and not": Wait so |
12:51:24 | FromDiscord | <Forest [She/Her]> `if not obj of MyTypeChildOne or of MyTypeChildTwo`? |
12:52:35 | FromDiscord | <Rika> `if not (obj of MyTypeChildOne or obj of MyTypeChildTwo)` |
12:52:51 | FromDiscord | <Rika> idk if op precedence is ok here tho |
12:53:47 | PMunch | Neat, I've set up a small script on my server now. It watches a folder that is synced with my phone through Syncthing and it's where my audio recorder sends it's recordings. The script then runs Vosk on the files, and writes up a small Notable-compatible markdown file with the transcription, moves the recording into the Notable attachments folder, and puts a link to that file in the transcript. So now I can record snippets of audio on my phone, and by the time |
12:53:47 | PMunch | I'm back at my PC I have a transcribed version of it already synced into my notables folder |
12:54:27 | FromDiscord | <aruZeta> neat |
12:56:42 | FromDiscord | <ShalokShalom> Anyone here, who used the QML binding? |
12:57:31 | FromDiscord | <Forest [She/Her]> Aight thanks ^^ |
12:58:04 | * | ggsx quit (Quit: Client closed) |
12:58:51 | FromDiscord | <Forest [She/Her]> Hm for some reason the if statement is still running? |
12:59:38 | * | ggsx joined #nim |
12:59:55 | FromDiscord | <Forest [She/Her]> In reply to @PMunch "Neat, I've set up": `if not (variable.jparent of JavaMethodDeclaration or variable.jparent of JavaBlock)` still returns true hm |
13:00:07 | FromDiscord | <Forest [She/Her]> Didn't mean to reply to that sorry ^^ |
13:01:02 | * | arkurious joined #nim |
13:02:31 | * | Vladar quit (Remote host closed the connection) |
13:03:48 | FromDiscord | <Forest [She/Her]> Oh it was my code |
13:03:55 | FromDiscord | <Rika> lol |
13:04:00 | FromDiscord | <aruZeta> lol |
13:04:13 | FromDiscord | <aruZeta> i was about to prove that it does https://media.discordapp.net/attachments/371759389889003532/1015245766484299808/unknown.png |
13:16:37 | PMunch | Hmm, I guess next step for me would be to add a screenshot/image ingest point as well for this system |
13:27:40 | * | ggsx quit (Quit: Client closed) |
13:29:41 | * | ggsx joined #nim |
13:30:49 | FromDiscord | <auxym> hm `nimcacheDir()` only seems to work in nimscript and not in macros/consts at compiletime. Any alternative? I seem to remember a way to get compiler options... |
13:44:42 | * | luis_ joined #nim |
13:45:27 | FromDiscord | <auxym> ah, the stuff in std/compilesettings is what I had in mind, seems to work |
14:02:12 | * | PMunch quit (Quit: Leaving) |
14:13:44 | FromDiscord | <auxym> hey @PMunch btw if you're still thinking about abstractions for ratel, this might be interesting food for thought: https://embeddedartistry.com/blog/2022/07/11/how-our-approach-to-abstract-interfaces-has-changed-over-the-years/ |
14:13:52 | * | ggsx quit (Ping timeout: 252 seconds) |
14:35:43 | * | rockcavera joined #nim |
14:35:43 | * | rockcavera quit (Changing host) |
14:35:43 | * | rockcavera joined #nim |
14:35:47 | FromDiscord | <d4rckh> how can i call a function pointer? |
14:36:04 | FromDiscord | <Rika> what do you have as code rn |
14:36:19 | FromDiscord | <d4rckh> one sec |
14:37:36 | FromDiscord | <d4rckh> sent a code paste, see https://play.nim-lang.org/#ix=49sN |
14:39:08 | FromDiscord | <Rika> im not sure how you would call a pointer from not-nim because theres a lot to it |
14:39:16 | FromDiscord | <Rika> calling convention, the signature of the function, etc |
14:40:13 | FromDiscord | <enthus1ast> @d4rckh\: define a nim proc, and cast the pointer to this proc |
14:40:18 | FromDiscord | <d4rckh> got it |
14:40:19 | FromDiscord | <d4rckh> thanks |
15:02:37 | qwr | not knowing context - in pure nim code you just use function type instead pointer and don't cast anything |
15:15:04 | * | derpydoo joined #nim |
15:39:41 | FromDiscord | <srozb> @PMunch It's alive: https://github.com/srozb/peni btw: thanks for nancy & termstyle that are being used there |
15:53:29 | FromDiscord | <voidwalker> Anyone familiar with the distributed/decentralized databases landscape ? I am looking for something easy to work with, that I can use in nim. So something that has REST/gRPC API, even just cli tool, although not ideal. |
15:55:40 | FromDiscord | <Rika> why the REST/gRPC api if you're looking for a database |
15:56:48 | FromDiscord | <voidwalker> well how else are you going to talk to it, since there are no wrappers for nim for any such database? |
15:57:39 | FromDiscord | <voidwalker> (edit) "well how else are you going to talk to it, since there are no ... wrappers" added "nim ports or" |
15:57:51 | FromDiscord | <Rika> most distributed databases i know are drop ins for my/postgres |
15:58:10 | FromDiscord | <Rika> not that i know manyt |
15:58:11 | FromDiscord | <Rika> (edit) "manyt" => "many" |
15:58:19 | FromDiscord | <voidwalker> ah, the ones I found so far, the "web 3.0" ones, mostly in js, don't have sql interface |
15:58:45 | FromDiscord | <auxym> web3, as in, blockchain? |
15:58:46 | FromDiscord | <Rika> so there's tidb and cockroachdb, the ones i know are "mainstream" in some sense |
15:58:47 | FromDiscord | <auxym> ugh |
15:58:56 | FromDiscord | <Rika> not sure if thats what you want |
15:58:57 | FromDiscord | <voidwalker> orbitDB is just perfect, but has fallen to bitrot, only works with ancient ipfs versions, and its http api is also buggy/outdated |
15:59:11 | FromDiscord | <Rika> do you want specifically decentralised |
15:59:22 | FromDiscord | <Rika> becaise the ones i mention are just distributed |
15:59:46 | FromDiscord | <voidwalker> I want something that requires minimal setup, that can talk to each other with almost no config |
16:02:11 | * | luis_ quit (Quit: luis_) |
16:04:31 | FromDiscord | <voidwalker> yeah, i'd rather have it centralised. don't want to spend much time now researching the perfecrt solution that I will use, that will be good at scale. just want something to get going quickly with close to zero setup, so that I can release v0.01 of my project |
16:04:46 | FromDiscord | <voidwalker> (edit) "centralised." => "decentralised." |
16:06:04 | FromDiscord | <Shiba> is there any pure game dev frameworks or graphics libaries |
16:07:40 | FromDiscord | <Rika> hows this https://github.com/amark/gun |
16:07:45 | FromDiscord | <Rika> not you shiba |
16:10:29 | NimEventer | New Nimble package! libfuzzy - libfuzzy/ssdeep wrapper, see https://github.com/srozb/nim-libfuzzy |
16:10:49 | FromDiscord | <voidwalker> yeah that gun thing, does not have its own http api. there is a project implementing it, but very limited functionality, no examples, no docs |
16:11:08 | FromDiscord | <voidwalker> it's meant for js bullshit |
16:13:23 | FromDiscord | <Rika> cant help then |
16:13:37 | * | neceve joined #nim |
16:16:29 | NimEventer | New Nimble package! autotemplate - Small library to automatically generate type-bound templates from files, see https://github.com/PMunch/autotemplate |
16:16:29 | NimEventer | New Nimble package! deriveables - Small library to generate procedures with a type derivation system, see https://github.com/PMunch/deriveables |
16:16:57 | FromDiscord | <Forest [She/Her]> sent a code paste, see https://play.nim-lang.org/#ix=49tj |
16:17:05 | FromDiscord | <Forest [She/Her]> (of course, I'd use `$` instead of toString) |
16:17:13 | FromDiscord | <Forest [She/Her]> (This is just an example of wrapping Java methods) |
16:18:14 | FromDiscord | <Rika> i dont understand the question |
16:19:21 | FromDiscord | <Forest [She/Her]> For context, I'm making a crappy way to build Java code within Nim, I'm trying to figure out a way to create 'bindings' in a semi-clean way for the user |
16:20:21 | FromDiscord | <Forest [She/Her]> There's also the issue of static methods too tbh |
16:28:20 | * | fallback quit (*.net *.split) |
16:28:20 | * | oisota quit (*.net *.split) |
16:28:21 | * | blackbeard420 quit (*.net *.split) |
16:28:21 | * | koltrast quit (*.net *.split) |
16:28:21 | * | lumidify quit (*.net *.split) |
16:28:34 | * | blackbeard420 joined #nim |
16:29:03 | * | lumidify joined #nim |
16:29:10 | * | oisota joined #nim |
16:29:25 | * | koltrast joined #nim |
16:31:18 | FromDiscord | <retkid> https://gitlab.com/CAlbassort/arbitraryfilevideoencoder |
16:31:19 | FromDiscord | <retkid> heres code |
16:31:22 | FromDiscord | <retkid> rip it to shreads |
16:31:28 | FromDiscord | <retkid> if thou wilt |
16:32:08 | FromDiscord | <retkid> madprops irc wanted to see it |
16:32:17 | FromDiscord | <retkid> In reply to @madprops "link?": . scroll up |
16:33:12 | FromDiscord | <ShalokShalom> In reply to @Forest "For context, I'm making": Äaahm, why not using Graal? |
16:34:20 | FromDiscord | <ShalokShalom> It supports Nim via LLVM and has native polyglot support with tons of language's ↵↵https://www.graalvm.org/ |
16:35:16 | * | vicecea quit (Remote host closed the connection) |
16:35:44 | * | vicecea joined #nim |
16:37:08 | * | fallback joined #nim |
16:37:39 | FromDiscord | <Forest [She/Her]> In reply to @ShalokShalom "Äaahm, why not using": Because then it'd be more messy, using LLVM with Graal is GraalVM-specific and also a pain to do in C |
16:38:00 | FromDiscord | <Forest [She/Her]> And plus, with this code generation library, i have the goal of making a full-blown Java backend for Nim |
16:38:15 | FromDiscord | <ShalokShalom> Aha |
16:38:19 | FromDiscord | <Forest [She/Her]> (Java source code instead of JVM bytecode because emitting Java code is definitely useful to have) |
16:38:27 | FromDiscord | <ShalokShalom> Well, Graal is already a full blown Java backend for Nim xD |
16:38:40 | FromDiscord | <ShalokShalom> Ah, that you mean. |
16:39:12 | FromDiscord | <Forest [She/Her]> Not really a full backend, of course it can run LLVM but you can't interop with Java code easily, can you? |
16:39:21 | FromDiscord | <ShalokShalom> Yes, you can |
16:39:25 | FromDiscord | <Forest [She/Her]> Of course you can, but you have to write the structure up yourself |
16:39:32 | FromDiscord | <Forest [She/Her]> In reply to @ShalokShalom "Yes, you can": How? |
16:40:03 | FromDiscord | <ShalokShalom> https://www.graalvm.org/22.2/reference-manual/polyglot-programming/ |
16:41:10 | FromDiscord | <ShalokShalom> I guess it makes sense to use this↵↵https://github.com/arnetheduck/nlvm |
16:43:10 | FromDiscord | <Forest [She/Her]> In reply to @ShalokShalom "https://www.graalvm.org/22.2/reference-manual/polyg": Yeah I've seen that but, how would i go about making, for example, a Minecraft mod? |
16:43:22 | FromDiscord | <Forest [She/Her]> Also, it won't run on the stock JDK (LLVM) |
16:44:15 | * | luis_ joined #nim |
16:55:54 | * | luis_ quit (Ping timeout: 244 seconds) |
16:57:42 | FromDiscord | <auxym> sooo, `staticExec("echo aaa > file.txt")` is turning out to be a PITA. any other ideas to write a file at compiletime? Ideally, OS-independent at supported multiline content? |
17:00:40 | FromDiscord | <auxym> huh, apparently plain old `writeFile` works at compiletime. Why do we have staticread again? |
17:01:05 | FromDiscord | <aruZeta> does `std/io` work at compiletime? |
17:01:44 | FromDiscord | <aruZeta> asking if you tried |
17:01:45 | FromDiscord | <auxym> yeah apparently. Don't know why, I remembered it didn't, and that's why we had staticread. |
17:02:03 | FromDiscord | <auxym> yeah just did, it works |
17:02:43 | FromDiscord | <auxym> should have tried it yesterday though 😓 |
17:03:01 | FromDiscord | <aruZeta> haha |
17:06:07 | FromDiscord | <aruZeta> I thought `import ../[foo, bar]` worked huh |
17:06:21 | FromDiscord | <ShalokShalom> In reply to @Forest "Also, it won't run": Well, you can compile a single file binary 🤷🏻♂️ |
17:06:30 | FromDiscord | <aruZeta> i knew `import ./[foo, bar]` didn't but did not expect `..` to not work too |
17:06:59 | FromDiscord | <ShalokShalom> And I guess you would need to run Minecraft on GraalVM, throw Nim into the mix and compile it then |
17:07:14 | FromDiscord | <ShalokShalom> But yeah, that would be a wildly different approach |
17:07:53 | FromDiscord | <ShalokShalom> But I guess for a Minecraft mod would you still need to create a binding or something for Minecraft specifically? |
17:08:38 | FromDiscord | <huantian> locking on graal probably isn't the best idea↵what if I want to use ZGC :togn |
17:08:42 | FromDiscord | <huantian> (edit) ":togn" => "😛" |
17:10:05 | FromDiscord | <Forest [She/Her]> In reply to @ShalokShalom "Well, you can compile": Yeah |
17:10:14 | FromDiscord | <Forest [She/Her]> In reply to @ShalokShalom "But I guess for": Yup that's the idea |
17:19:22 | FromDiscord | <Rika> In reply to @aruZeta "I thought `import ../[foo,": needs quoting |
17:19:29 | FromDiscord | <Rika> ".."/[foo, bar] afaik will work |
17:20:06 | FromDiscord | <aruZeta> ohhh |
17:20:09 | FromDiscord | <aruZeta> lemme try |
17:20:50 | FromDiscord | <aruZeta> ty rika it does! |
17:20:57 | FromDiscord | <aruZeta> this is sooo much better now to look at |
17:48:54 | FromDiscord | <ShalokShalom> In reply to @Elegantbeef "My "wm" did that,": You know the KDE WM KWin has three different tiling extensions and supports Wayland? |
18:01:53 | FromDiscord | <Forest [She/Her]> In reply to @Forest "Question, if i wanted": Anyway, anyone have any ideas? |
18:02:02 | FromDiscord | <Forest [She/Her]> Or would there be a better way to do it? |
18:04:03 | FromDiscord | <Forest [She/Her]> Also, does anyone think doing `proc staticMethod(statCls:typedesc[JavaObject])` is alright for static methods or would there be a better way of doing it? |
18:15:33 | NimEventer | New thread by Alexeypetrushin: UI with WebView without JS?, see https://forum.nim-lang.org/t/9431 |
18:44:42 | FromDiscord | <sealmove> In reply to @Forest "Anyway, anyone have any": Hmm you want to mimic the syntax of the class declaration? |
18:45:05 | FromDiscord | <sealmove> If so, I think only macros can help you |
18:45:20 | * | termer quit (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
18:45:35 | FromDiscord | <sealmove> If not, then nim does have `method` |
18:45:43 | * | termer joined #nim |
18:47:20 | FromDiscord | <Forest [She/Her]> In reply to @รєคɭ๓๏שє "Hmm you want to": not declaration, just accessing them |
18:47:52 | FromDiscord | <creikey> is there a serializing library that allows me to add new fields to the serialized objects and still use old serialized data |
18:48:01 | FromDiscord | <Forest [She/Her]> I realised i may not even need to use macros, since 'bindings' to Java classes will be automatically generated |
18:49:09 | * | derpydoo quit (Quit: derpydoo) |
18:49:47 | FromDiscord | <sealmove> In reply to @creikey "is there a serializing": Nim is statically typed so no |
18:50:58 | FromDiscord | <creikey> In reply to @รєคɭ๓๏שє "Nim is statically typed": capnproto offers this though and is also statically typed |
18:51:11 | FromDiscord | <sealmove> Hmm |
18:51:21 | FromDiscord | <sealmove> Like how? |
18:51:34 | FromDiscord | <creikey> In reply to @รєคɭ๓๏שє "Like how?": https://capnproto.org/ |
18:52:08 | FromDiscord | <sealmove> Without embedding them? |
18:52:45 | FromDiscord | <creikey> In reply to @รєคɭ๓๏שє "Without embedding them?": what do you mean embedding? |
18:53:34 | FromDiscord | <sealmove> sent a code paste, see https://play.nim-lang.org/#ix=49tV |
18:53:53 | FromDiscord | <creikey> sent a long message, see http://ix.io/49tW |
18:54:58 | FromDiscord | <sealmove> Ok I don't know if there is a library with such a feature. But it's a good idea for binarylang =) |
18:56:43 | FromDiscord | <creikey> it's very nice, it lets you actually use it to save data as your program changes |
18:57:14 | FromDiscord | <sealmove> Hmm how? It generates new types? |
18:57:34 | FromDiscord | <creikey> In reply to @รєคɭ๓๏שє "Hmm how? It generates": what do you mean new type? |
18:58:09 | FromDiscord | <sealmove> Is it a runtime thing? |
18:58:19 | FromDiscord | <creikey> In reply to @รєคɭ๓๏שє "Is it a runtime": no it's compile time |
18:59:00 | FromDiscord | <creikey> in capnproto you define your data in a "capnproto-lang" schema, then at compile time it generates code in whatever language you want to use the data in |
18:59:30 | FromDiscord | <sealmove> Yes I know, I've worked on kaitai struct which is similar |
19:00:02 | FromDiscord | <dom96> There is a capnp implementation in Nim |
19:00:11 | FromDiscord | <dom96> https://github.com/zielmicha/capnp.nim |
19:00:12 | FromDiscord | <creikey> In reply to @dom96 "There is a capnp": capnproto is so much added complexity though |
19:00:34 | FromDiscord | <creikey> I want binny, but just I can add more fields |
19:00:37 | FromDiscord | <sealmove> In reply to @dom96 "There is a capnp": Ohhh nice! |
19:01:03 | FromDiscord | <creikey> and maybe I annotate the number |
19:01:05 | FromDiscord | <dom96> looks like it's used in a real project too so probably works quite well |
19:01:06 | FromDiscord | <creikey> (edit) "binny," => "flatty," |
19:01:44 | FromDiscord | <sealmove> I still don't get the feature. So you just _extend_ your types with more fields? You can write a macro which generates a new types with the added fields. |
19:01:54 | FromDiscord | <dom96> I use capnp a lot at work now so really cool to see it's already supported by Nim |
19:01:58 | FromDiscord | <sealmove> I don't know about backwards compatibility though, how it would work |
19:02:16 | FromDiscord | <sealmove> Maybe inheritance? |
19:02:18 | FromDiscord | <dom96> I guess creikey wants backwards compat |
19:02:20 | FromDiscord | <creikey> In reply to @dom96 "I use capnp a": yeah capnproto is great |
19:02:27 | FromDiscord | <creikey> In reply to @dom96 "I guess creikey wants": I don't see how you don't have backwards compat in a serialized program |
19:02:28 | FromDiscord | <sealmove> Inheritance fits the case |
19:02:39 | FromDiscord | <creikey> like who doesn't change their structs over time as you improve your program? |
19:02:52 | FromDiscord | <dom96> true |
19:02:54 | FromDiscord | <sealmove> You can add, not change |
19:03:02 | FromDiscord | <sealmove> To be backwards compatible |
19:03:39 | FromDiscord | <creikey> I can't add fields with flatty, looking for alternative that isn't a giant parser + separate schema language + giant generated C++ which is what capnproto has |
19:04:03 | FromDiscord | <sealmove> Use inheritance |
19:05:33 | FromDiscord | <sealmove> I don't know flatty, if it doesn't mix well, u cam extend flatty to support this feature through inheritance |
19:05:34 | FromDiscord | <creikey> In reply to @รєคɭ๓๏שє "Use inheritance": how would this solve the problem I have? |
19:05:40 | FromDiscord | <sealmove> Shouldn't be hard |
19:06:02 | FromDiscord | <sealmove> (edit) "cam" => "can" |
19:06:02 | emery | creikey: do you want to add new fields to your serialized data or to your nim types? |
19:06:15 | FromDiscord | <creikey> In reply to @emery "<@180866243819995136>: do you want": to my nim types, then be able to load old serialized data |
19:06:30 | FromDiscord | <sealmove> When u inherit u get flat layout |
19:07:12 | emery | creikey: i recently did a serializer/deserializer but I explicity made this not work :( |
19:07:39 | FromDiscord | <creikey> In reply to @emery "<@180866243819995136>: i recently did": flatty is really nice, but I just can't use it to save program state because I need to change my object over time |
19:08:10 | FromDiscord | <creikey> add more fields when necessary |
19:08:23 | FromDiscord | <creikey> if there was a way to "upgrade" an object by writing some helper function I would be willing to do that ever revisoin |
19:08:25 | FromDiscord | <creikey> (edit) "revisoin" => "revision" |
19:08:38 | FromDiscord | <creikey> it needs to be binary because I have a lot of binary blobs in my data |
19:08:51 | emery | ah, I hadn't thought about state serialization |
19:09:40 | emery | last I heard that's still an unsolved problem in computer science |
19:09:59 | FromDiscord | <creikey> In reply to @emery "last I heard that's": capnproto works really well, it's just annoying to have the codegen step |
19:12:48 | emery | creikey: if you are going to roll your own solution then hasCustomPragma and getCustomPragmaVal are your friends |
19:14:22 | FromDiscord | <creikey> wonder if I should use bson |
19:16:55 | emery | there is this preserves thing but the binary encoding spec isn't finalized - https://git.syndicate-lang.org/ehmry/preserves-nim https://git.syndicate-lang.org/ehmry/syndicate-nim#preserves-schema |
19:19:00 | FromDiscord | <creikey> In reply to @emery "there is this preserves": I wonder if I could just extend flatty to have the struct field version numbers capnproto has |
19:19:10 | FromDiscord | <dom96> In reply to @creikey "capnproto works really well,": You’re always going to have it though, no? The only way you’re not is if you are willing to pay a runtime price on efficiency |
19:20:24 | FromDiscord | <creikey> In reply to @dom96 "You’re always going to": Structs being backward compatible is definitely an efficiency price in storage and speed of read/write, but sometimes it's wanted like when working with a program that runs for awhile and while it's stimulating you add new fields to the object over time |
19:21:37 | emery | it sounds like you need self-describing dictionaries/maps |
19:21:44 | FromDiscord | <creikey> In games before I've used json, and I wrote the version number, then whenever I changed the data I expected I wrote a converter function that upgraded it to the most current object |
19:21:57 | FromDiscord | <creikey> I think I could do the same with flatty, maybe that's the best idea |
19:48:20 | FromDiscord | <Elegantbeef> @creikey\: https://github.com/beef331/nimtrest/blob/master/vershun.nim#L80-L93 is the way to go 😄 |
19:48:58 | FromDiscord | <Elegantbeef> Statically typed and migrated versioned data |
19:49:47 | FromDiscord | <creikey> In reply to @Elegantbeef "<@180866243819995136>\: https://github.com/beef331/": dude this is so good |
19:49:53 | FromDiscord | <creikey> isn't that just object variants though? |
19:49:55 | FromDiscord | <creikey> it's better |
19:50:01 | FromDiscord | <Elegantbeef> It's not object variants no |
19:50:06 | FromDiscord | <Elegantbeef> It's statically typed |
19:50:16 | FromDiscord | <creikey> I can just do that with flatty right |
19:50:18 | FromDiscord | <creikey> and write the version number |
19:50:40 | FromDiscord | <Elegantbeef> You use the static version number to specify the type then you can iterate the version until you get to `Version.high` calling `migrate` |
19:50:57 | FromDiscord | <creikey> I read the docs and still don't understand what mixin does https://media.discordapp.net/attachments/371759389889003532/1015348121695440926/unknown.png |
19:51:03 | FromDiscord | <Elegantbeef> Yea i mean you just replicate `saveData` and `loadDaat` then just need to unpack it |
19:51:16 | FromDiscord | <Elegantbeef> `mixin` says "we will resolve this symbol at instantiation" |
19:51:35 | FromDiscord | <creikey> In reply to @Elegantbeef "`mixin` says "we will": interesting? |
19:51:36 | FromDiscord | <Elegantbeef> Cause when you have generii interfaces you want to have `migrate` be user definable |
19:51:40 | FromDiscord | <Elegantbeef> generic\ |
19:51:52 | FromDiscord | <creikey> In reply to @Elegantbeef "Yea i mean you": so you read the version number right |
19:51:58 | FromDiscord | <creikey> but how do you use that to decide which static function to use |
19:52:01 | FromDiscord | <creikey> just a switch statement? |
19:52:03 | FromDiscord | <creikey> that returns the tyep |
19:52:04 | FromDiscord | <creikey> (edit) "tyep" => "type" |
19:52:16 | FromDiscord | <Elegantbeef> https://github.com/beef331/nimtrest/blob/master/vershun.nim#L43 |
19:52:31 | FromDiscord | <creikey> I cannot read macros unfortunately |
19:52:44 | FromDiscord | <creikey> that generates what I was describing I see |
19:52:48 | FromDiscord | <Elegantbeef> Yes |
19:53:01 | FromDiscord | <Elegantbeef> It calls migrate until it gets to `MyData[Version.high]` |
19:53:20 | FromDiscord | <creikey> interesting |
19:53:23 | FromDiscord | <creikey> I like this other than the macro |
19:53:35 | FromDiscord | <Elegantbeef> I mean the macro is important |
19:53:35 | FromDiscord | <creikey> I just cannot understand macros the variable names don't make sense |
19:53:45 | FromDiscord | <creikey> In reply to @Elegantbeef "I mean the macro": it is yeah, I might just manually type out what the macro generates |
19:53:57 | FromDiscord | <creikey> I think what the macro generates for this file is shorter than the actual macro |
19:54:06 | FromDiscord | <Elegantbeef> Just copy the file then compile with `--expandMacros:unpackToData` |
20:09:18 | FromDiscord | <tandy> sent a code paste, see https://play.nim-lang.org/#ix=49uh |
20:09:19 | FromDiscord | <Elegantbeef> What's the error? |
20:09:31 | FromDiscord | <tandy> `/home/tandy/Programming/nim/website/src/views/db.nim(23, 16) Error: cannot instantiate: 'T'` |
20:09:51 | FromDiscord | <Elegantbeef> How are you calling it? |
20:10:40 | FromDiscord | <tandy> ` let clients: Table[cstring, Client] = await db.getTable(CLIENT_DB_STORE)` |
20:10:52 | FromDiscord | <Elegantbeef> `db.getTable[YourTypeHere](ClientDbStore)` |
20:11:53 | FromDiscord | <Elegantbeef> sorry that should be `[: Client]` |
20:12:10 | FromDiscord | <Elegantbeef> Nim doesnt have return type inference |
20:12:16 | FromDiscord | <tandy> ahhh i see |
20:22:43 | FromDiscord | <Require Support> anyone have experience with switching from `asyncdispatch` to `chronos` for async and http stuff? basically im trying to see if the process will take me days or years :/ |
20:23:51 | FromDiscord | <ShalokShalom> Is there an opinionated web framework, like Rails? |
20:24:08 | FromDiscord | <ShalokShalom> Or something html over the wire, or MVU like? |
20:24:16 | FromDiscord | <Patitotective> In reply to @Require Support "anyone have experience with": i was going to do it but i realized i had to implement m own download procedure and i was lazy↵but it should be hard at all, seems to have the same procedures |
20:24:43 | FromDiscord | <dom96> what's your motivation for switching? |
20:25:20 | FromDiscord | <Patitotective> ssl certificates and dlls for me ;p |
20:25:21 | FromDiscord | <Patitotective> (edit) ";p" => ":p" |
20:27:08 | FromDiscord | <Rainbow Asteroids> If all you needed was a download procedure, why didn't you try puppy? |
20:27:51 | FromDiscord | <dom96> puppy isn't async is it? |
20:28:17 | FromDiscord | <Patitotective> nope, it isnt |
20:28:54 | FromDiscord | <Q-Master> @dom96\: can you plz tell me how can I understand why I continiously getting Unhandled exception\: No handles or timers registered in dispatcher. [ValueError] even when there are 2 working network IOs and several sleepAsync? |
20:29:20 | FromDiscord | <dom96> what are "network IOs"? |
20:29:35 | FromDiscord | <dom96> that error happens when you don't have any FDs in the event loop |
20:29:53 | FromDiscord | <tandy> sent a code paste, see https://play.nim-lang.org/#ix=49uk |
20:30:00 | FromDiscord | <Require Support> In reply to @dom96 "what's your motivation for": I dont wanna use the openssl dll |
20:30:07 | FromDiscord | <Q-Master> sending and receiving via socket.↵(@dom96) |
20:30:12 | FromDiscord | <Elegantbeef> `[: Client]` is only for method call syntax |
20:30:29 | FromDiscord | <Q-Master> That's impossible.↵(@dom96) |
20:30:42 | FromDiscord | <dom96> well you must not have any fds in there |
20:30:52 | FromDiscord | <ajusa> PMunch's deriveables looks pretty neat |
20:30:58 | FromDiscord | <tandy> oh |
20:31:00 | FromDiscord | <dom96> feel free to add echos into the code that raises that exception |
20:31:04 | FromDiscord | <dom96> to see how many FDs there are |
20:31:04 | FromDiscord | <tandy> but it still says without that |
20:31:21 | FromDiscord | <dom96> In reply to @Require Support "I dont wanna use": ahh, makes sense |
20:31:22 | FromDiscord | <tandy> nvm |
20:31:39 | FromDiscord | <Require Support> In reply to @Patitotective "i was going to": https://github.com/bung87/scorper/blob/devel/src/scorper/http/streamclient.nim might be helpful for your case |
20:31:49 | FromDiscord | <Q-Master> ok.↵(@dom96) |
20:32:13 | FromDiscord | <dom96> In reply to @Q-Master "ok. (<@132595483838251008>)": In general I would recommend not being afraid to dive into the async code to see what is actually going on |
20:32:18 | FromDiscord | <dom96> it will help your understanding a lot |
20:33:32 | FromDiscord | <Q-Master> I definitely will do this to understand why the FD is eventually disappear.↵(@dom96) |
20:34:04 | FromDiscord | <dom96> btw as an aside it's funny to me how many are happy to use bearssl when its own website states that it's "beta-quality" software |
20:34:25 | FromDiscord | <Q-Master> @dom96\: BTW, withTimeout is very unsafe to use with reading and writing to sockets. |
20:34:41 | FromDiscord | <dom96> In reply to @Q-Master "<@132595483838251008>\: BTW, withTimeout is": yep, because it doesn't cancel operations |
20:35:10 | FromDiscord | <Require Support> In reply to @dom96 "btw as an aside": TIL |
20:36:36 | FromDiscord | <dom96> also last release was in 2018 0_0 https://www.bearssl.org/todo.html |
20:36:55 | FromDiscord | <dom96> how is Status using this in prod without it being a massive security nightmare? |
20:37:16 | FromDiscord | <Q-Master> It's fixable easily. I think I'll make a bugfix later. I've already fixed it in my networkutils, just don't have enough time to make a real fix.↵(@dom96) |
20:37:56 | FromDiscord | <dom96> In reply to @Q-Master "It's fixable easily. I": Is it? Didn't you already create a PR that attempted to fix it and it turned out much more difficult? |
20:38:01 | FromDiscord | <Q-Master> The fix is only for network ops. |
20:38:07 | FromDiscord | <Forest [She/Her]> sent a code paste, see https://paste.rs/eqR |
20:38:24 | FromDiscord | <dom96> I think `withTimeout` should at the very least have a big warning in its docs |
20:38:31 | FromDiscord | <Forest [She/Her]> (edit) "https://play.nim-lang.org/#ix=49um" => "https://play.nim-lang.org/#ix=49un" |
20:38:37 | FromDiscord | <Q-Master> yep |
20:38:42 | FromDiscord | <dom96> but what you can do to cancel operations is just close the FD |
20:39:22 | FromDiscord | <Patitotective> In reply to @Forest "If i have the": yes it will echo `Father heeeelp` |
20:39:31 | FromDiscord | <Q-Master> Just adding timeout to send and recv operations like in std/net is enough.↵(@dom96) |
20:39:41 | FromDiscord | <Forest [She/Her]> In reply to @Patitotective "yes it will echo": Even for `b.wow()`? |
20:39:57 | FromDiscord | <Patitotective> only for `b`, `a` will call the other proc |
20:40:06 | FromDiscord | <aruZeta> In reply to @Forest "If i have the": why not test it yourself 😄 https://media.discordapp.net/attachments/371759389889003532/1015360488298790962/unknown.png |
20:40:20 | FromDiscord | <Patitotective> if you want dynamic dispatch see https://nim-lang.org/docs/manual.html#methods |
20:40:47 | FromDiscord | <Forest [She/Her]> In reply to @aruZeta "why not test it": I just realised that playground existed just before you said this lmao |
20:40:51 | FromDiscord | <Forest [She/Her]> but thanks! |
20:40:52 | FromDiscord | <aruZeta> hahaha |
20:40:55 | FromDiscord | <aruZeta> np :) |
20:41:15 | FromDiscord | <aruZeta> love the playground for this kind of things |
20:41:21 | FromDiscord | <Forest [She/Her]> So it favours procs with the same type as the type being called even if imherited, good to know |
20:41:33 | FromDiscord | <Forest [She/Her]> In reply to @aruZeta "love the playground for": It is great ngl |
20:41:49 | FromDiscord | <Forest [She/Her]> Also, my thing for making Java code is nearly usable :) |
20:43:09 | FromDiscord | <Rainbow Asteroids> last commit was 3 months ago↵https://www.bearssl.org/gitweb/?p=BearSSL;a=summary |
20:43:21 | FromDiscord | <aruZeta> In reply to @Forest "So it favours procs": take a look here maybe you find smth https://nim-lang.org/docs/manual.html#overload-resolution |
20:43:51 | FromDiscord | <aruZeta> as you can see the preference is exact match |
20:43:55 | FromDiscord | <aruZeta> so yh |
20:45:33 | FromDiscord | <dom96> In reply to @Rainbow Asteroids "last commit was 3": sure, but development seems to be slow and it's unclear what level of support it has |
20:46:13 | FromDiscord | <Forest [She/Her]> Using `typedesc[MyType]` feels so hacky but works for static fields that are unchangeable |
20:46:32 | FromDiscord | <dom96> in any case, IMO all operating systems should provide SSL functionality natively |
20:46:45 | FromDiscord | <dom96> I know that Windows kinda does |
20:49:31 | FromDiscord | <Forest [She/Her]> On a scale of one to ten, how messy is this code? https://play.nim-lang.org/#ix=49uo |
20:49:32 | FromDiscord | <Forest [She/Her]> :p |
20:52:25 | FromDiscord | <Superstart033> In reply to @Forest "On a scale of": Java/20 |
20:53:01 | FromDiscord | <kevin> Anyone use winim CreateThread with a Nim function? |
20:53:34 | FromDiscord | <kevin> wondering what the cast is to convert `proc start(lpParameter: LPVOID)` to `LPTHREAD_START_ROUTINE` |
20:54:22 | FromDiscord | <Forest [She/Her]> In reply to @Superstart033 "Java/20": Lmao, it's only this trash rn because i'm making an initial wrapper in Nim with my codegen lib to see the before and after (also to catch things i may of missed in the code) |
20:54:36 | FromDiscord | <domosokrat> the createDir part can be simplified to `createDir("com/foc/codewrapper")` |
20:55:05 | FromDiscord | <domosokrat> I mean lines 66-71 |
20:55:23 | FromDiscord | <Forest [She/Her]> Oh it can? sweet |
20:55:31 | * | neceve quit (Ping timeout: 248 seconds) |
20:55:55 | FromDiscord | <Forest [She/Her]> Thanks! |
20:56:42 | FromDiscord | <Bung> In reply to @kevin "wondering what the cast": why not use built-in function ? |
20:59:27 | FromDiscord | <kevin> In reply to @Bung "why not use built-in": Nim dll's don't support threading natively |
20:59:53 | FromDiscord | <kevin> I'll use winim CreateThread until Nim's threading is mature enough that it supports threads |
20:59:57 | FromDiscord | <kevin> (edit) "threads" => "DLLs" |
21:00:33 | FromDiscord | <kevin> In reply to @Bung "why not use built-in": or do you mean there's a built in function to get the proc's address |
21:21:13 | FromDiscord | <Bung> In reply to @kevin "or do you mean": I use threads.createThread , haven't use thread and dll same time, what's the problem |
21:25:01 | FromDiscord | <Forest [She/Her]> Using Nim to generate Java code to generate Nim code- |
21:25:06 | FromDiscord | <Forest [She/Her]> Ah yes, minimalism |
21:27:01 | FromDiscord | <Patitotective> why? |
21:33:25 | FromDiscord | <Forest [She/Her]> I wanna compare how verbose generating the code in Nim was with just using codegen lib directly, and then using 'bindings' |
21:33:51 | FromDiscord | <Forest [She/Her]> Java needs to be used to make bindings (since reflection and portability) |
21:41:18 | NimEventer | New post on r/nim by Ruri: Call Function in Windows DLL by Ordinal rather than Function Name?, see https://reddit.com/r/nim/comments/x4d9t1/call_function_in_windows_dll_by_ordinal_rather/ |
21:42:59 | FromDiscord | <Forest [She/Her]> For anyone curious about the currently outputted java code: https://hastebin.com/qawazeguwo.java |
21:43:38 | FromDiscord | <Forest [She/Her]> With the current Nim code that generates said java code: https://hastebin.com/wafitoxako.properties |
21:43:52 | FromDiscord | <Forest [She/Her]> I struggled to write the code for the last bit lol |
21:51:13 | * | greaser|q quit (Changing host) |
21:51:13 | * | greaser|q joined #nim |
21:51:30 | * | greaser|q is now known as GreaseMonkey |
21:53:47 | FromDiscord | <aruZeta> https://media.discordapp.net/attachments/371759389889003532/1015379035477512322/2022-09-02_23-53-08.mp4 |
21:54:12 | FromDiscord | <Patitotective> 👀 |
21:54:14 | FromDiscord | <aruZeta> svg truly can do some stuff huh |
22:25:53 | FromDiscord | <Tuatarian> guys my file still seems to not be compiling |
22:25:57 | FromDiscord | <Tuatarian> how do I flush the cache for that file? |
22:25:58 | FromDiscord | <voidwalker> what to look for opening a file with the default program associated with that file's extension on the system ? |
22:26:19 | FromDiscord | <Tuatarian> sent a code paste, see https://play.nim-lang.org/#ix=49uD |
22:26:42 | FromDiscord | <Elegantbeef> I mean you should've cleared the cache with `-f` or `--nimcache:...` |
22:26:53 | FromDiscord | <Tuatarian> neither of those seemed to work |
22:27:09 | FromDiscord | <Tuatarian> sent a long message, see http://ix.io/49uE |
22:27:11 | FromDiscord | <Elegantbeef> Well then go to the windows equivlent of `.cache` and remove the nim folder |
22:27:22 | FromDiscord | <Tuatarian> yes, I don't know where the nim cache is on windows |
22:28:23 | FromDiscord | <Elegantbeef> `C;\users\name\Temp\` it seems |
22:28:29 | FromDiscord | <Elegantbeef> Actually wrong thing |
22:28:47 | FromDiscord | <Elegantbeef> `user\AppData\Local` |
22:31:02 | FromDiscord | <Tuatarian> where in local? |
22:31:21 | FromDiscord | <Elegantbeef> `C:\users\$USERNAME\AppData\Local` |
22:31:38 | FromDiscord | <Elegantbeef> It should be named nim |
22:31:46 | FromDiscord | <Tuatarian> I don't have any folder named nim in local... |
22:31:58 | FromDiscord | <Elegantbeef> Well then the windows output isnt the same as Linux |
22:32:08 | FromDiscord | <Elegantbeef> So i dont know search your HDD for "nim" |
22:39:42 | FromDiscord | <auxym> default nimcache on windows is `C:\Users\you\nimcache` |
22:41:23 | FromDiscord | <Tuatarian> got it, thanks |
22:43:45 | FromDiscord | <Tuatarian> ok so `renderer_d` is simply not present in nimcahc |
22:43:51 | FromDiscord | <Tuatarian> nor is anything that looks like it |
22:44:03 | FromDiscord | <Tuatarian> so I'm running into some sort of strange compiler bug |
23:41:19 | FromDiscord | <dom96> > wolfSSL supports industry standards up to the current TLS 1.3 and DTLS 1.3, is up to 20 times smaller than OpenSSL, offers a simple API, an OpenSSL compatibility layer |
23:41:26 | FromDiscord | <dom96> Anyone wanna get wolfssl into Nim's stdlib? :D |
23:41:34 | FromDiscord | <dom96> (edit) ":D" => "😃" |