00:13:18 | FromDiscord | <Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=WVGLqlRK |
00:13:34 | FromDiscord | <Robyn [She/Her]> Is error reporting botched? Why is it line 167 causing the error? |
00:17:16 | FromDiscord | <Robyn [She/Her]> Hm, I'm thinking of making `~` a proc for converting an int to a distinct AstIndex |
00:21:00 | * | oz quit (Quit: EOF) |
00:23:59 | * | ox joined #nim |
00:24:35 | FromDiscord | <Robyn [She/Her]> Oh I found a pain point of my `unpackIt` macro |
00:24:47 | FromDiscord | <Robyn [She/Her]> It runs the expression multiple times |
00:24:57 | FromDiscord | <Robyn [She/Her]> Should be an easy fix using a temporary variable |
00:31:26 | FromDiscord | <Robyn [She/Her]> That didn't fix it, huh... |
00:32:01 | FromDiscord | <Robyn [She/Her]> That doesn't make sense |
00:32:16 | FromDiscord | <Robyn [She/Her]> Oh wait, it does |
00:33:24 | FromDiscord | <Robyn [She/Her]> Fixed~ |
00:44:30 | * | beholders_eye quit (Read error: Connection reset by peer) |
00:50:02 | FromDiscord | <Robyn [She/Her]> I really should look into strscans but I can't be bothered, for the same reason I don't want to learn regex |
00:50:42 | * | beholders_eye joined #nim |
00:51:05 | FromDiscord | <Elegantbeef> Well good thing strscans is not complicated |
00:52:14 | FromDiscord | <Robyn [She/Her]> Good point |
00:52:26 | FromDiscord | <Robyn [She/Her]> It'd make my parser combinator a lot cleaner too, I'd imagine |
00:54:05 | FromDiscord | <Robyn [She/Her]> Oh damn I can just use `$w` for identifiers |
00:55:02 | FromDiscord | <Elegantbeef> Well depends what identifiers have |
00:55:09 | FromDiscord | <Elegantbeef> if `thing_bleh` is valid, no |
00:56:05 | FromDiscord | <Elegantbeef> Actually seems like `_` is valid, not `-` though |
00:59:21 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "Actually seems like `_`": Yeah, I'm not supporting kebab case |
01:20:42 | * | beholders_eye quit (Read error: Connection reset by peer) |
01:24:30 | * | zgasma quit (Remote host closed the connection) |
01:26:33 | * | beholders_eye joined #nim |
01:33:52 | * | beholders_eye quit (Ping timeout: 246 seconds) |
01:51:09 | * | nazgulsenpai_ joined #nim |
01:52:20 | * | __________ joined #nim |
01:52:55 | * | _________ quit (Ping timeout: 268 seconds) |
01:52:55 | * | nazgulsenpai quit (Ping timeout: 268 seconds) |
02:11:52 | * | ox is now known as oz |
02:16:03 | FromDiscord | <Robyn [She/Her]> Lol Beef if you see my unpack macro now, you'd have an aneurysm |
02:25:37 | * | krux02 quit (Remote host closed the connection) |
02:41:23 | FromDiscord | <albassort> @Robyn [She/Her] isn't there a git repo for that |
02:41:38 | FromDiscord | <albassort> uses syntax like <- |
02:43:07 | FromDiscord | <Robyn [She/Her]> In reply to @albassort "uses syntax like <-": I think there is, but I don't think it'd work with my sum type implementation |
02:58:15 | FromDiscord | <ElegantBeef> Ah bridge died @Robyn [She/Her] how bad is the code? |
03:10:05 | FromDiscord | <Robyn [She/Her]> In reply to @elegantbeef "Ah bridge died <@524288464422830095>": I shall send it now |
03:10:20 | FromDiscord | <Robyn [She/Her]> https://play.nim-lang.org/#pasty=eXeufLQM |
03:12:45 | FromDiscord | <ElegantBeef> God those are ugly if expressions |
03:13:24 | FromDiscord | <Robyn [She/Her]> :D |
03:13:47 | FromDiscord | <ElegantBeef> I'll never understand why people prefer writing those on a single line |
03:14:27 | FromDiscord | <Robyn [She/Her]> 🤷‍♀️ I just couldn't be bothered to do all that indenting |
03:14:43 | * | m5zs7k quit (Ping timeout: 260 seconds) |
03:15:24 | * | m5zs7k joined #nim |
03:28:25 | * | m5zs7k quit (Ping timeout: 268 seconds) |
03:30:22 | * | m5zs7k joined #nim |
03:31:16 | FromDiscord | <ElegantBeef> > # Couldn't figure out a good way to represent this using↵> # a cache table↵↵In this case you'd do `(nnkSym, [(field, val)])` |
03:31:23 | FromDiscord | <ElegantBeef> Lol good job discord |
03:36:38 | FromDiscord | <Robyn [She/Her]> In reply to @elegantbeef "> # Couldn't figure": Wdym Beef? |
03:37:13 | FromDiscord | <ElegantBeef> You'd make a `nnkstmtList(nnkSym, (nnkIdent, nnkSym))` |
03:37:18 | FromDiscord | <ElegantBeef> Then iterate t ofind it |
03:37:21 | FromDiscord | <ElegantBeef> to find it |
03:40:20 | FromDiscord | <Robyn [She/Her]> Aaah okay |
03:40:52 | FromDiscord | <Robyn [She/Her]> I don't think I could get the symbol for the generated distinct type though, in the untyped macro, can I? |
03:42:08 | FromDiscord | <ElegantBeef> So then `ident` or `string` |
03:42:20 | FromDiscord | <Robyn [She/Her]> Gucci |
04:07:14 | FromDiscord | <abb3v> Howdy folk |
04:08:25 | FromDiscord | <abb3v> I'm extremely new to nim (only learning it for a project with a friend), and I'm trying to understand how threading works |
04:08:30 | FromDiscord | <abb3v> is this proper implementation for threading? |
04:08:31 | FromDiscord | <abb3v> https://github.com/soswav/sofetch/blob/main/src/getters/os_info.nim |
04:32:09 | FromDiscord | <Elegantbeef> Well you're returning a thread which is not 'allowed' |
04:32:31 | FromDiscord | <Elegantbeef> What's even the point in what you're doing in that proc |
04:33:02 | FromDiscord | <Elegantbeef> You create a thread then join it which means you've written a single threaded program that uses threads |
04:35:50 | FromDiscord | <Elegantbeef> You should likely use weave, taskpools or malebolgia |
04:39:59 | FromDiscord | <abb3v> right sorry. |
04:52:42 | FromDiscord | <Elegantbeef> No need to apologise, it's not my code that is using threads, but ont \:D |
04:52:46 | FromDiscord | <Elegantbeef> not\ |
04:53:10 | FromDiscord | <BALMZ APP> Sorry↵(@abb3v) |
06:15:22 | * | xet7 joined #nim |
06:56:12 | * | derpydoo joined #nim |
07:17:40 | * | wheatengineer joined #nim |
07:20:08 | * | ntat joined #nim |
08:28:23 | * | rockcavera quit (Remote host closed the connection) |
08:30:58 | * | rockcavera joined #nim |
08:55:41 | * | khazakar quit () |
08:56:21 | * | khazakar joined #nim |
08:58:21 | * | wheatengineer quit (Remote host closed the connection) |
09:07:39 | FromDiscord | <albassort> hey so having issues with rust FFI |
09:08:02 | FromDiscord | <albassort> im compiling to a static binary and pointing it there and it compiles |
09:08:10 | FromDiscord | <albassort> until i call a function which requires deps |
09:08:52 | FromDiscord | <albassort> then i get https://media.discordapp.net/attachments/371759389889003532/1246389996991152218/message.txt?ex=665c36a4&is=665ae524&hm=7cb462622bd777f4124f6a49d22433a1b19928ea8f03f07a07c4cbf148e2a726& |
09:08:58 | FromDiscord | <albassort> but endlessly |
09:09:03 | FromDiscord | <albassort> idk what im doing wrong |
09:09:15 | FromDiscord | <albassort> if its a static binary then it shouldn't have these issues. they should be in the binary |
09:25:03 | * | ntat quit (Quit: Leaving) |
09:25:49 | NimEventer | New thread by Allin: GuildenStern webserver now supports streaming multipart/formdata requests, see https://forum.nim-lang.org/t/11685 |
09:31:10 | FromDiscord | <pmunch> In reply to @albassort "if its a static": Looks like a linker error |
10:07:23 | FromDiscord | <nocturn9x> can someone explain to me why nim.cfg overrides command-line options instead of the opposite? |
10:07:29 | FromDiscord | <nocturn9x> what a braindead thing to do |
10:19:05 | * | derpydoo quit (Quit: derpydoo) |
10:41:24 | * | ntat joined #nim |
11:44:54 | * | ntat quit (Quit: Leaving) |
12:57:22 | * | beholders_eye joined #nim |
13:21:55 | * | beholders_eye quit (Ping timeout: 246 seconds) |
14:35:50 | * | beholders_eye joined #nim |
14:38:34 | * | ntat joined #nim |
16:04:32 | FromDiscord | <demotomohiro> In reply to @albassort "hey so having issues": `undefined reference to xyz` error means the function definition is missing.↵You probably need to link the library that implements the function. |
16:07:40 | FromDiscord | <demotomohiro> In reply to @nocturn9x "can someone explain to": https://nim-lang.org/docs/nimc.html#compiler-usage-configuration-files↵If nim.cfg settings have priority over command-line settings, it might be a bug. |
16:08:46 | FromDiscord | <nocturn9x> well, passing `-d:debug` to `nim c` does not in fact compile in debug mode because `-d:danger` is in the nim.cfg file. Or are you telling me that since they're both `define`d then it's doing both? |
16:08:57 | FromDiscord | <nocturn9x> (if so, then it is a major oversight) |
16:09:44 | FromDiscord | <nocturn9x> It would probably make sense to have them as separate command-line options if so |
16:12:22 | * | beholders_eye quit (Ping timeout: 246 seconds) |
16:14:41 | FromDiscord | <odexine> In reply to @nocturn9x "well, passing `-d:debug` to": it's doing both |
16:15:04 | FromDiscord | <odexine> you can do --undefine:danger |
16:15:09 | FromDiscord | <odexine> oops its --undef |
16:15:16 | FromDiscord | <odexine> or -u:danger probably also works |
16:23:59 | FromDiscord | <fwsgonzo> I'm going to solve "it" another way. No embedding a compiler. Since my game architecture is server/client, I'm going to bake efficient shared objects on the server and distribute to clients as just another resource |
16:24:16 | FromDiscord | <fwsgonzo> (edit) "resource" => "resource. Servers tend to have one-liner access to compilers 🙂" |
16:41:48 | FromDiscord | <Robyn [She/Her]> In reply to @odexine "or -u:danger probably also": `-u` works |
17:20:41 | * | beholders_eye joined #nim |
17:47:00 | FromDiscord | <achrohisa> sent a code paste, see https://play.nim-lang.org/#pasty=lKSgqinh |
17:49:04 | FromDiscord | <achrohisa> i was watching this https://youtu.be/CIB_khrNPSU?t=3m40s |
17:49:26 | FromDiscord | <achrohisa> sent a code paste, see https://play.nim-lang.org/#pasty=xInpbADw |
17:55:17 | FromDiscord | <ieltan> sent a code paste, see https://play.nim-lang.org/#pasty=xstadpJq |
17:57:02 | FromDiscord | <ieltan> I was also wondering about that in the past |
17:57:37 | FromDiscord | <achrohisa> welp, i'm just being curious because i always use the latter when implementing something like array list, not the former |
17:58:06 | FromDiscord | <achrohisa> so dunno if this is worth for #internals, seems like a channel for internal Nim's development |
17:59:11 | FromDiscord | <ieltan> Seems appropriate to me since it's a question about the implementation of nim but do as you will |
18:06:18 | FromDiscord | <achrohisa> welp, just asked anyway https://discord.com/channels/371759389889003530/768367394547957761/1246523611041239172 |
18:07:59 | FromDiscord | <demotomohiro> iirc, in `NimStringV1`, `len` was in `NimStrPayload`. |
18:09:13 | FromDiscord | <demotomohiro> I guess you can save a few memory when a string is empty. |
18:09:31 | FromDiscord | <achrohisa> sent a code paste, see https://play.nim-lang.org/#pasty=kSEcZaJG |
18:10:13 | FromDiscord | <achrohisa> in Nim, it's `ptr NimStrPayload`, so i guess it has something to do with ARC/ORC or GC in general |
18:10:47 | FromDiscord | <achrohisa> but the C++ code, it's it just same as defined all in same struct |
18:11:16 | FromDiscord | <achrohisa> so for now, i don't see any advantage than putting it in separated struct |
18:12:54 | FromDiscord | <griffith1deadly> In reply to @achrohisa "so for now, i": advantage - `ptr` to only one struct, instead of `ptr cap` and `ptr data`. |
18:12:59 | * | ntat quit (Quit: Leaving) |
18:13:19 | FromDiscord | <demotomohiro> When a string is moved, only `len` and `p` are copied.↵If `cap` was in `NImStringV2`, `len`, `p` and `cap` need to be copied. |
18:14:38 | FromDiscord | <achrohisa> In reply to @demotomohiro "When a string is": sounds reasonable, i guess (?) |
18:15:13 | FromDiscord | <achrohisa> since i don't think the performance affects that much when reducing from copy 3 numbers (pointer is just number) to 2 numbers |
18:15:30 | FromDiscord | <ieltan> Also nim strings are copy on write, maybe this design is just more flexible but I genuinely have no clue too |
18:18:42 | FromDiscord | <achrohisa> In reply to @achrohisa "since i don't think": i mean it's not like a deep copy, like copy each element in the array to another allocated array |
18:22:54 | FromDiscord | <achrohisa> In reply to @achrohisa "the implementation in video": welp, i think i understand why the C++ implementation using this |
18:29:27 | FromDiscord | <achrohisa> sent a code paste, see https://play.nim-lang.org/#pasty=VFGFntYG |
18:30:09 | FromDiscord | <achrohisa> and i should stop watching youtube at midnight |
18:30:18 | FromDiscord | <achrohisa> cannot understand shit |
18:30:21 | FromDiscord | <achrohisa> :kekw: |
18:30:56 | FromDiscord | <achrohisa> In reply to @demotomohiro "When a string is": for Nim, i will take this as the answer |
18:31:02 | FromDiscord | <achrohisa> thank you |
18:32:21 | FromDiscord | <demotomohiro> In reply to @achrohisa "for Nim, i will": It is just my guess. I don't know real reason. |
18:32:49 | FromDiscord | <demotomohiro> sent a code paste, see https://play.nim-lang.org/#pasty=AvIjTBva |
18:33:58 | FromDiscord | <achrohisa> In reply to @achrohisa "i was watching this": i also referenced this video about "small string optimization" (maybe discord should display the video title) |
18:34:36 | FromDiscord | <achrohisa> but yeah, when i watched that, my head is like "wait a min, i think i saw this implementation somewhere else before" |
18:35:20 | FromDiscord | <achrohisa> but Nim uses pointer, and his implementation don't |
18:35:29 | FromDiscord | <achrohisa> (edit) "don't" => "doesn't" |
18:46:10 | FromDiscord | <achrohisa> In reply to @achrohisa "but yeah, when i": i think i should use my mind instead of my head |
18:46:18 | FromDiscord | <achrohisa> english is hard :kekw: |
18:49:17 | FromDiscord | <albassort> In reply to @pmunch "Looks like a linker": oh i forgot to include the details |
18:49:28 | FromDiscord | <albassort> it is a linker error yes |
18:49:37 | FromDiscord | <albassort> gm |
18:50:47 | FromDiscord | <albassort> sent a code paste, see https://play.nim-lang.org/#pasty=ZfpgYjlc |
18:50:59 | FromDiscord | <albassort> and I linked to that specific output .a file |
18:51:28 | FromDiscord | <albassort> however, whenever i call any functions imported with cargo, the linker looks for it and cant find it |
18:51:38 | FromDiscord | <albassort> i know this is kinda a rust question but i asked there and i was ignored |
18:51:59 | FromDiscord | <albassort> the static lib seems to be static, its 33m ins size |
18:53:07 | FromDiscord | <guttural666> anyone familiar with Owlkettle and how to register your own signals? |
19:05:08 | * | beholders_eye quit (Ping timeout: 268 seconds) |
19:08:51 | FromDiscord | <nocturn9x> is there a way to get `scinim/numpyarrays` as a separate standalone package that only requires arraymancer and nimpy? |
19:09:11 | FromDiscord | <nocturn9x> I literally only use scinim for one function and it brings along with it a plethora of dependencies which are not only unnecessary, but cause build issues on Windows |
19:14:59 | FromDiscord | <vindaar> at the moment, no. what kind of build issues?↵please open an issue on the scinim repo about your problem. maybe there's something we can do to slim it down for certain use cases |
19:16:29 | * | pbsds3 quit (Ping timeout: 240 seconds) |
19:17:36 | * | beholders_eye joined #nim |
19:22:33 | * | pbsds3 joined #nim |
19:36:53 | * | beholders_eye quit (Ping timeout: 240 seconds) |
19:42:43 | FromDiscord | <planetis_m> In reply to @achrohisa "but yeah, when i": That's what you're looking for https://github.com/planetis-m/ssostrings |
19:43:31 | FromDiscord | <planetis_m> Nims string is a better design imo, doesn't need any premature optimization that's called sso. |
19:44:55 | FromDiscord | <Elegantbeef> If you're dealing with a lot of small strings https://github.com/termermc/nim-stack-strings/ probably is more ideal than sso |
19:45:59 | FromDiscord | <Elegantbeef> Nim strings always have heap allocated data so if you can avoid that pointer it can be faster |
19:57:47 | FromDiscord | <pmunch> In reply to @guttural666 "anyone familiar with Owlkettle": Try to ask @Phil |
19:58:19 | FromDiscord | <pmunch> In reply to @albassort "the static lib seems": Hmm, seems like you're missing something though.. |
19:58:59 | FromDiscord | <guttural666> In reply to @pmunch "Try to ask <@180601887916163073>": ah nice, seen him on the Github, thanks |
19:59:48 | FromDiscord | <Elegantbeef> Arent static libraries specific for a toolchain |
20:07:36 | FromDiscord | <planetis_m> In reply to @Elegantbeef "If you're dealing with": Nah just use a string, it doesn't solve nearly as much problems as it creates with compatibility. |
20:07:41 | FromDiscord | <albassort> sent a code paste, see https://play.nim-lang.org/#pasty=wBRoNWeF |
20:07:53 | FromDiscord | <albassort> im not understanding |
20:08:08 | FromDiscord | <albassort> In reply to @Elegantbeef "Arent static libraries specific": in some cases but here it says its ideal for non-rust applications |
20:08:20 | FromDiscord | <albassort> so where is this coming from?!? |
20:49:40 | FromDiscord | <xkonti> Os it normal that learning Nim makes me create my own nim-inspired language? |
20:50:20 | FromDiscord | <Elegantbeef> If you run into compiler bugs, probably |
21:20:28 | FromDiscord | <Phil> In reply to @guttural666 "ah nice, seen him": I'd need to look into it again, but generally you should be able to just have a field on the child-component that takes in a closure and then you call that closure whenever the child-component should fire sth |
21:21:16 | FromDiscord | <Phil> I'm explicitly saying closure because you may want to do calls in that thing that contains data from your parent componen |
21:21:18 | FromDiscord | <Phil> (edit) "componen" => "component" |
21:25:49 | FromDiscord | <guttural666> sent a code paste, see https://play.nim-lang.org/#pasty=TJiLhlqu |
21:26:36 | FromDiscord | <guttural666> redrawing the whole UI etc., should be a signal that specific UI elements can react to |
21:28:40 | FromDiscord | <guttural666> or just hook a signal from my thread into a main UI loop function, that can then react to it accordingly |
22:01:57 | FromDiscord | <albassort> alright |
22:02:14 | FromDiscord | <albassort> so im stuck |
22:02:26 | FromDiscord | <albassort> beef this is a question directed at you |
22:02:35 | FromDiscord | <guttural666> In reply to @xkonti "Os it normal that": I've watched your terminal video today dude haha |
22:02:43 | FromDiscord | <Elegantbeef> There was no question! |
22:03:17 | FromDiscord | <albassort> sent a code paste, see https://play.nim-lang.org/#pasty=eTBJpLoq |
22:03:41 | FromDiscord | <albassort> so i need to link the library which has a well named function "trunc" |
22:03:48 | FromDiscord | <albassort> here is the line in the code that uses "trunc" |
22:04:13 | FromDiscord | <albassort> sent a code paste, see https://play.nim-lang.org/#pasty=FUxvfwTB |
22:04:21 | FromDiscord | <albassort> (edit) "https://play.nim-lang.org/#pasty=TMwlyMrc" => "https://play.nim-lang.org/#pasty=OnZDCcCo" |
22:04:33 | FromDiscord | <albassort> ...i dont know where to go from here |
22:05:16 | FromDiscord | <Elegantbeef> I don't use Rust so cannot say much |
22:05:21 | FromDiscord | <albassort> sent a code paste, see https://play.nim-lang.org/#pasty=LpJotwPq |
22:05:46 | FromDiscord | <albassort> (edit) "https://play.nim-lang.org/#pasty=PdWiSXuF" => "https://play.nim-lang.org/#pasty=CwhrSBtr" |
22:06:02 | FromDiscord | <albassort> (edit) "https://play.nim-lang.org/#pasty=uiKmPvjl" => "https://play.nim-lang.org/#pasty=mJsgETui" |
22:06:58 | FromDiscord | <guttural666> sent a code paste, see https://play.nim-lang.org/#pasty=lqkXhzYl |
22:07:51 | FromDiscord | <albassort> seems promising |
22:07:59 | FromDiscord | <albassort> last time i just wrote mine in gtk in c then wrapped the functions |
22:08:12 | FromDiscord | <albassort> i think i'll keep doing that unless this proves to be less of a pita |
22:09:16 | FromDiscord | <albassort> In reply to @albassort "here are its deps": im at such a lost its time to ask chatgpt if in its infinite github knowledge, it knows where it comes from and how i can bind it |
22:11:22 | FromDiscord | <guttural666> In reply to @albassort "seems promising": works really well, as far as I can tell, really straight forward, in contrast to the Qt wrapper I've tried |
22:11:41 | FromDiscord | <albassort> qt is fucked man |
22:11:48 | FromDiscord | <albassort> not the wrappers fault |
22:12:45 | FromDiscord | <guttural666> I reckon it's just a c++ complexity problem |
22:13:58 | FromDiscord | <guttural666> Qt is pretty fantastic if you just use c++, the KDE applications I've looked at are surprisingly readable and hacking on them feels not too bad |
22:14:47 | FromDiscord | <guttural666> C is just so much easier |
22:16:16 | FromDiscord | <Elegantbeef> It's hard to document the C++ ABI |
22:17:08 | * | disso-peach quit (Quit: Leaving) |
22:17:27 | FromDiscord | <guttural666> yeah, the problem I had with the Qt wrapper in Nim had to do with pointers vs. references |
22:20:02 | FromDiscord | <guttural666> feel like Rust is going down the same road, complexity is just too damn high, writing, interop, maintainability |
22:20:24 | FromDiscord | <albassort> beef |
22:20:27 | FromDiscord | <albassort> i found trunc() |
22:20:30 | FromDiscord | <albassort> its in the rust stdlib |
22:20:36 | FromDiscord | <albassort> what the fuck what do i do |
22:20:47 | FromDiscord | <albassort> spongebob panic gif |
22:21:05 | FromDiscord | <albassort> In reply to @guttural666 "feel like Rust is": always has been |
22:30:29 | FromDiscord | <guttural666> In reply to @guttural666 "at the moment I'm": @Phil so this is 100% bad I'm sure, as soon as the main thread decides to redraw it just spawns another thread, because none of my appstate is guarded, definitely a multithreading issue here |
22:30:47 | FromDiscord | <guttural666> (edit) "here" => "here, resulting in a segfault" |
22:31:59 | FromDiscord | <guttural666> (edit) "thread," => "ScanThread while there is already one running," |
22:40:58 | FromDiscord | <Elegantbeef> @albassort you're asking the wrong person, i've never used Rust for anything serious |
22:41:27 | FromDiscord | <albassort> i've given up on you i'm diving in on the wild world o rust |
22:41:33 | FromDiscord | <albassort> (edit) "o" => "of" |
22:41:39 | FromDiscord | <albassort> i cant believe anyone takes this language seriously |
22:44:14 | FromDiscord | <albassort> solution found |
22:44:32 | FromDiscord | <albassort> -ldl -lpthread -lm |
22:47:39 | FromDiscord | <Robyn [She/Her]> In reply to @albassort "i cant believe anyone": 🤷‍♀️ |
22:48:38 | FromDiscord | <Robyn [She/Her]> Oh @albassort, random question: Why not compile that Rust lib to WASM, then use wasm2c and make C bindings to that output? |
22:49:56 | FromDiscord | <Robyn [She/Her]> sent a long message, see https://pasty.ee/CcSfyPew |
22:50:42 | FromDiscord | <Robyn [She/Her]> You also get the benefits and cons of a sandbox, not sure if there are cons here |
22:50:59 | FromDiscord | <Robyn [She/Her]> Though I think you have to also specify an amount of memory that can be allocated to the library, too? |
22:52:32 | FromDiscord | <Elegantbeef> Jesus what a workflow |
22:53:13 | FromDiscord | <Elegantbeef> > it wouldn't need a Rust compiler↵Except in the case you want to compile the library |
22:54:44 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "> it wouldn't need": Not if you wasm2c it first :> |
22:55:09 | FromDiscord | <albassort> In reply to @chronos.vitaqua "🤷‍♀️": ok how about this, when i get the library functioning in a low level fixed way, to a configurable way i want, you can then do that |
22:55:14 | FromDiscord | <Robyn [She/Her]> You'd only need to make a C generated output and ship it with the Nim bindings once |
22:55:22 | FromDiscord | <albassort> because i personally don't need that |
22:55:32 | FromDiscord | <albassort> i'll publish the lib publicly but im not gonna do stuff i dont need |
22:56:42 | FromDiscord | <Robyn [She/Her]> XD |
22:56:56 | FromDiscord | <Robyn [She/Her]> Yeah I was mostly joking about this, I'd be shocked if you took it seriously |
22:57:17 | FromDiscord | <Robyn [She/Her]> In reply to @albassort "ok how about this,": But that could be something I could fuck around with xP |
22:57:33 | FromDiscord | <albassort> like what i want is a easy to work with pgp library that doesn't break randomly, and has very little fluff such as encrypting your private keys (that should be your job) |
22:57:51 | FromDiscord | <albassort> you write your sqlite and encryption layers ontop of |
22:57:52 | FromDiscord | <Robyn [She/Her]> I do need to understand how wasm2c works, and I do need to make a Binaryen pass that can turn WASM code with GC instructions into WASM code with non-GC instructions |
22:57:55 | FromDiscord | <albassort> thats my concept |
22:58:23 | FromDiscord | <Robyn [She/Her]> (I need this for the ASM lib in Java I wanna create shitty bindings for in Nim, but Bytecoder outputs WASM GC code) |
22:58:37 | FromDiscord | <albassort> you are so silly robyn |
22:58:56 | FromDiscord | <albassort> i would not hire you, not because you're not talented, but because you will do some crazy shit nobody else can maintain |
23:00:08 | FromDiscord | <albassort> "Woah robyn made this really easy to use toolchain that does 1 thing and breaks when you look at it |
23:00:14 | FromDiscord | <albassort> (edit) "it" => "it"" |
23:03:26 | FromDiscord | <Robyn [She/Her]> :D |
23:03:35 | FromDiscord | <Robyn [She/Her]> I am talented, can't focus for shit when needed though! |
23:03:39 | FromDiscord | <Robyn [She/Her]> I'm getting better at that tbf |
23:03:40 | FromDiscord | <Robyn [She/Her]> But eh |
23:04:13 | FromDiscord | <Elegantbeef> You say as you wrote an entire DSL for sumtypes |
23:06:10 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "You say as you": What comment is this a response to? Talent or focus? |
23:06:22 | FromDiscord | <Robyn [She/Her]> Also it's fragile as fuck :P |
23:07:28 | FromDiscord | <Robyn [She/Her]> I mean, it sorta works now, I guess |
23:07:34 | FromDiscord | <Robyn [She/Her]> But it still sucks a bit imo |
23:08:06 | FromDiscord | <Robyn [She/Her]> If only it was possible to replace the type section that a pragma was annotating one of the contained types with, with a statement list |
23:24:51 | FromDiscord | <albassort> fun times for rust |
23:24:58 | FromDiscord | <albassort> i dont think i can use `return` |
23:25:03 | FromDiscord | <albassort> because sometimes it just gives me noise |
23:25:15 | FromDiscord | <albassort> so return ptrs it is ig |
23:34:57 | FromDiscord | <Robyn [She/Her]> In reply to @albassort "i dont think i": Really? Weird |
23:35:11 | FromDiscord | <Robyn [She/Her]> Oh is it because of lifetime nonsense? |
23:35:18 | FromDiscord | <albassort> presumubly |
23:35:23 | FromDiscord | <albassort> (edit) "presumubly" => "presumably" |
23:35:26 | FromDiscord | <albassort> im not gonna debug it |
23:36:04 | FromDiscord | <albassort> im now learning how to put ptrs into it and then mutate then which as you can imagine with rust typing, is insane asylum type stuff |
23:36:30 | FromDiscord | <Elegantbeef> Well it's also expressionful |
23:36:55 | FromDiscord | <Robyn [She/Her]> XD |
23:39:05 | FromDiscord | <Elegantbeef> just `.clone` then mutate or take in a mutable reference |
23:42:57 | * | beholders_eye joined #nim |
23:43:48 | * | cm quit (Quit: Bye.) |
23:44:09 | * | cm joined #nim |