| 00:16:06 | * | derpydoo joined #nim |
| 00:48:46 | * | GnuYawk67 quit (Quit: The Lounge - https://thelounge.chat) |
| 00:49:06 | * | GnuYawk67 joined #nim |
| 00:56:42 | * | jjido quit (Quit: My laptop has gone to sleep. ZZZzzz…) |
| 01:01:14 | * | derpydoo quit (Ping timeout: 245 seconds) |
| 01:47:43 | FromDiscord | <fl4shk> is there a way I can get my `if` statements to not compile into `goto`s? |
| 01:51:27 | FromDiscord | <fl4shk> looking more and more like I need to do the C DSL stuff for this. |
| 02:04:56 | FromDiscord | <fl4shk> how do you prevent the `result` value from being implemented as a pointer? |
| 02:07:55 | FromDiscord | <fl4shk> maybe if I just do everything as `template`s instead of `proc`s I can achieve what I'm after. |
| 02:16:55 | FromDiscord | <fl4shk> that... actually appears to have worked |
| 02:17:34 | FromDiscord | <fl4shk> for getting rid of pointers at least... |
| 02:17:40 | FromDiscord | <fl4shk> anyway I'm gonna need to try another thing |
| 02:18:09 | FromDiscord | <fl4shk> unless I just make the full C code generator I'm out of luck here since my application is weird |
| 02:21:06 | FromDiscord | <fl4shk> unfortunate. Maybe I just can't do what I was hoping to. |
| 02:26:35 | FromDiscord | <fl4shk> ...hm I wonder if I could have a macro that does `.emit:"...".` |
| 03:16:29 | * | rockcavera joined #nim |
| 04:35:02 | FromDiscord | <gogolxdong666> Anyone heard DeepSeek |
| 05:34:53 | * | derpydoo joined #nim |
| 05:35:54 | * | derpydoo quit (Client Quit) |
| 06:22:29 | * | derpydoo joined #nim |
| 07:33:52 | FromDiscord | <mrgaturus> In reply to @gogolxdong666 "Anyone heard DeepSeek": it's a cool proof of concept that biggest AI companies don't care about optimize code |
| 07:34:16 | FromDiscord | <mrgaturus> (edit) "In reply to @gogolxdong666 "Anyone heard DeepSeek": it's a cool proof of concept that ... biggest" added "shows" |
| 07:34:29 | FromDiscord | <mrgaturus> (edit) "code" => "it's models" |
| 07:34:37 | FromDiscord | <mrgaturus> (edit) "it's" => "their" |
| 07:47:53 | FromDiscord | <volt_eye.> In reply to @gogolxdong666 "Anyone heard DeepSeek": Yes, it is Premium and FOSS LLM A.I Model that is trained on data stolen from Chat GPT which itself stole alot of data from Internet Copyrighted Content violating Law. |
| 07:51:42 | * | ntat joined #nim |
| 08:11:31 | FromDiscord | <firasuke> Shouldn't `cfSymlinkAsIs` be the default `CopyFlag` for `Copy` procs instead of `cfSymlinkFollow`? (at least on unix-like operating systems)? |
| 08:12:14 | * | redj_ quit (Quit: No Ping reply in 180 seconds.) |
| 08:13:46 | * | redj joined #nim |
| 08:49:27 | * | jjido joined #nim |
| 09:15:15 | * | coldfeet joined #nim |
| 09:46:04 | * | disso-peach joined #nim |
| 09:58:02 | FromDiscord | <nocturn9x> question about channels |
| 09:58:09 | FromDiscord | <nocturn9x> how safe is it to send references across them |
| 09:59:58 | FromDiscord | <nocturn9x> looks like they get copied when they're sent |
| 10:00:01 | FromDiscord | <nocturn9x> which is fine by me |
| 10:00:10 | FromDiscord | <nocturn9x> but idk, I remember someone recommending not to do that |
| 10:08:24 | * | derpydoo quit (Quit: derpydoo) |
| 10:45:36 | FromDiscord | <nocturn9x> ended up just not sending refs over a channel |
| 10:45:39 | FromDiscord | <nocturn9x> they work _great_ tho |
| 10:45:41 | FromDiscord | <nocturn9x> very nice. |
| 11:28:36 | * | jjido quit (Quit: My laptop has gone to sleep. ZZZzzz…) |
| 11:57:08 | * | jjido joined #nim |
| 12:26:15 | * | xet7 joined #nim |
| 13:35:59 | * | Jjp137 quit (Ping timeout: 260 seconds) |
| 13:36:18 | * | Jjp137 joined #nim |
| 13:49:37 | * | derpydoo joined #nim |
| 14:08:41 | FromDiscord | <arkanoid> is it possible to convert a seq to an array at compile time? I want to turn a static string into `array[mystr.len, byte]` at compile time |
| 14:11:01 | * | attah quit (Ping timeout: 248 seconds) |
| 14:12:58 | FromDiscord | <solitudesf> sent a code paste, see https://play.nim-lang.org/#pasty=gdlMseRk |
| 14:15:26 | FromDiscord | <solitudesf> this will be compiletime in static context, but you can even add `{.compileTime.}` to make sure it doesn't run at runtime. |
| 14:25:19 | FromDiscord | <arkanoid> that's easy! thanks |
| 14:32:19 | * | derpydoo quit (Quit: derpydoo) |
| 14:47:34 | FromDiscord | <arkanoid> what's the best way to expose compile time parameters to pure Nim lib users? It is -d define, or is there a better pattern |
| 14:50:53 | FromDiscord | <Robyn [She/Her]> In reply to @arkanoid "what's the best way": Depends, what are you trying to do exactly? |
| 14:52:40 | FromDiscord | <arkanoid> let user decide which file to slurp at compile time to read some specific data |
| 14:53:29 | FromDiscord | <Robyn [She/Her]> Yeah I'd use a define flag for that if you don't want to expose a proc that runs at compile-time |
| 14:53:48 | FromDiscord | <arkanoid> thanks |
| 14:54:51 | * | derpydoo joined #nim |
| 15:01:18 | * | coldfeet quit (Quit: Lost terminal) |
| 15:01:55 | FromDiscord | <fl4shk> is there a good tutorial for fancier Nim macros? |
| 15:02:08 | FromDiscord | <fl4shk> here's what I specifically need: |
| 15:02:53 | FromDiscord | <fl4shk> I'm trying to use plain old C `if`-`else` chains without `goto`s, and I need to somehow convert Nim expressions into C expressions |
| 15:03:03 | FromDiscord | <fl4shk> ...this is a very simplified version of things |
| 15:03:05 | FromDiscord | <fl4shk> Let me post what I have |
| 15:03:53 | FromDiscord | <fl4shk> sent a code paste, see https://play.nim-lang.org/#pasty=RYUuYdEF |
| 15:04:17 | FromDiscord | <fl4shk> sent a code paste, see https://play.nim-lang.org/#pasty=tMjFvXHo |
| 15:04:20 | FromDiscord | <fl4shk> I have stuff like this ^ |
| 15:04:49 | FromDiscord | <fl4shk> sent a code paste, see https://play.nim-lang.org/#pasty=XMQbpaaa |
| 15:05:02 | FromDiscord | <fl4shk> (note: `Mat3x3` is a 3x3 matrix) |
| 15:05:14 | FromDiscord | <fl4shk> I don't know how to do the `cexpr` part |
| 15:05:26 | FromDiscord | <fl4shk> nor the `cstmtlist` part |
| 15:05:39 | FromDiscord | <fl4shk> maybe with a `template`? |
| 15:08:13 | FromDiscord | <fl4shk> it's possible I need to make a PipelineC-code AST |
| 15:08:25 | FromDiscord | <fl4shk> and do `.emit.`s manually |
| 15:09:02 | FromDiscord | <fl4shk> oh maybe the `nodecl` pragma will work |
| 15:13:27 | FromDiscord | <solitudesf> considering pipelinec isn't really close to proper backend language and doesn't fit into any part of nim pipeline, maybe you should take approach like https://github.com/treeform/shady and just go from nim ast to string? |
| 15:13:51 | FromDiscord | <fl4shk> so, that is an idea, but I think I'm close to this working |
| 15:14:18 | FromDiscord | <bosinski2023> In reply to @fl4shk "is there a good": i liked this https://dev.to/beef331/demystification-of-macros-in-nim-13n8 |
| 15:14:32 | FromDiscord | <fl4shk> ooh I'll look at that |
| 15:14:38 | FromDiscord | <solitudesf> In reply to @fl4shk "so, that is an": very deranged behaviour, but i support you |
| 15:16:13 | FromDiscord | <fl4shk> I think it won't take very much code to get this working |
| 15:16:15 | FromDiscord | <fl4shk> ...but well |
| 15:20:06 | FromDiscord | <fl4shk> can I prevent Nim from doing this error:↵`Error: expression 'left.m[0][0] == right.m[0][0]' is of type 'bool' and has to be used (or discarded)` |
| 15:20:40 | FromDiscord | <Robyn [She/Her]> In reply to @fl4shk "can I prevent Nim": You can mark your own functions as discardable, but not really, no |
| 15:20:44 | FromDiscord | <fl4shk> hmm |
| 15:21:10 | FromDiscord | <fl4shk> that basically means I'm gonna need a more advanced approach |
| 15:21:21 | FromDiscord | <Robyn [She/Her]> Or you can make discardable a no-op? |
| 15:21:25 | FromDiscord | <fl4shk> oh? |
| 15:21:25 | FromDiscord | <Robyn [She/Her]> (edit) "discardable" => "discard" |
| 15:21:32 | FromDiscord | <fl4shk> that would help |
| 15:21:33 | FromDiscord | <Robyn [She/Her]> In your C code, I mean |
| 15:21:38 | FromDiscord | <Robyn [She/Her]> (edit) "In your ... C" added "generated" |
| 15:22:50 | FromDiscord | <fl4shk> can I change how the Nim compiler emits `discard`? |
| 15:23:05 | FromDiscord | <fl4shk> how do I do that? |
| 15:23:17 | FromDiscord | <fl4shk> the generated C code has a cast to `void` |
| 15:25:57 | FromDiscord | <fl4shk> well, maybe I can make something more sophisticated |
| 15:26:16 | FromDiscord | <fl4shk> and do the string output :P |
| 15:41:20 | * | derpydoo quit (Ping timeout: 252 seconds) |
| 15:50:54 | FromDiscord | <fl4shk> @solitudesf can you tell me more about the approach you mentioned? |
| 15:53:30 | FromDiscord | <fl4shk> maybe I need to read the code |
| 15:54:40 | FromDiscord | <fl4shk> wait a minute |
| 15:54:43 | FromDiscord | <fl4shk> this code is very small! |
| 15:58:19 | FromDiscord | <bendugo> fix the font size on the playground: https://github.com/PMunch/nim-playground-frontend/pull/38 |
| 16:03:59 | * | jjido quit (Quit: My laptop has gone to sleep. ZZZzzz…) |
| 16:07:49 | * | coldfeet joined #nim |
| 16:08:12 | * | coldfeet quit (Client Quit) |
| 16:59:58 | * | xet7 quit (Quit: Leaving) |
| 17:12:56 | * | coldfeet joined #nim |
| 17:35:39 | * | disso-peach quit (Quit: Leaving) |
| 18:05:20 | FromDiscord | <summarity> `--docRoot` seems to require an absolute path. If I want to set it in a nim.cfg, how can I express "the doc root is the 'src' subdirectory of the directory where this nim.cfg is located". I'm not using nimble for this project. |
| 18:14:46 | FromDiscord | <fluff.goose> sorry for the dumb question, but is Nim code compiled to C even with the optimization flags enabled the fastest it can be? |
| 18:15:40 | FromDiscord | <lainlaylie> In reply to @summarity "`--docRoot` seems to require": does `$projectDir` help? |
| 18:18:19 | FromDiscord | <summarity> In reply to @lainlaylie "does `$projectDir` help?": How would I apply that in nim.cfg? |
| 18:23:06 | FromDiscord | <summarity> Hm this isn't possible. projectDir doesn't resolve to an absolute path (`Error: 'conf.docRoot.isAbsolute' failed`). However, moving the config to a `config.nims` file and using `currentSourcePath` worked. |
| 18:38:12 | FromDiscord | <summarity> A different question, when using `md2html` to convert single MD files, how can I inject arbitrary HTML? Any HTML seems to be escaped and just rendered as text by default |
| 19:19:05 | FromDiscord | <Elegantbeef> @fluff.goose why would it suddenly stop being compiled to C? |
| 19:20:13 | FromDiscord | <fluff.goose> it's just an example. i'm just curious if Nim being compiled with optimization flags enabled is all I can get for performance |
| 19:21:32 | FromDiscord | <Elegantbeef> Well you can disable runtime checks, but Nim does not do any optimisations on it's generated code |
| 19:21:32 | FromDiscord | <Elegantbeef> Optimisation flags only enable C optimisation |
| 19:26:25 | FromDiscord | <fl4shk> so I'm making good progress |
| 19:26:33 | FromDiscord | <fl4shk> on my converter to PipelineC |
| 19:26:44 | FromDiscord | <fl4shk> thanks to @solitudesf for the suggestion of outputting strings! |
| 19:26:50 | FromDiscord | <fl4shk> this is a lot easier than I thought it'd be |
| 19:26:52 | FromDiscord | <fl4shk> really cool approach! |
| 19:41:26 | FromDiscord | <fluff.goose> In reply to @Elegantbeef "Well you can disable": i see. i have a DOOM Style software renderer and i get 230 FPS filling the screen up entirely with a solid colour and end up getting around 220FPS drawing walls and what not |
| 19:42:46 | FromDiscord | <fluff.goose> (edit) "In reply to @Elegantbeef "Well you can disable": i see. i have a DOOM Style software renderer and i get 230 FPS filling the screen up entirely with a solid colour and end up getting around 220FPS drawing walls and what ... notsure" added "not, and was wondering how i could get more. the resolution was at 320x200, but i'm" | "not, and was wondering how i could get more. the resolution was at 320x200, but i'mnot ... " a |
| 20:10:40 | FromDiscord | <bendugo> is there an admin or anyone here i could talk to? |
| 20:15:21 | FromDiscord | <Elegantbeef> @fluff.goose profile the code to see the issue, though you can always do `-d:release -d:lto --cc:clang` |
| 20:15:28 | FromDiscord | <Elegantbeef> Clang tends to generate faster code ime |
| 20:15:48 | FromDiscord | <bendugo> @pmunch Check PM |
| 20:23:08 | FromDiscord | <fluff.goose> In reply to @Elegantbeef "Clang tends to generate": seems to shit the bed when I include the others, and it wont let me run my exe when I use --cc:clang |
| 20:28:18 | FromDiscord | <Elegantbeef> Huh |
| 20:28:39 | FromDiscord | <Elegantbeef> What OS and do you have clang installed? |
| 20:28:39 | FromDiscord | <fluff.goose> it shows the terminal, but doesnt go further and crashes with only --cc:clang |
| 20:29:02 | FromDiscord | <fluff.goose> W11 and yes I do, it's in my mingw64\bin https://media.discordapp.net/attachments/371759389889003532/1337882907095597116/image.png?ex=67a9100d&is=67a7be8d&hm=4edbe4d990b739c1938a901d6fdb847e8ede2c5273873f3834cb2797b0956aac& |
| 20:30:00 | FromDiscord | <Elegantbeef> Are there bugs with a release build with your default compiler? |
| 20:31:14 | FromDiscord | <Elegantbeef> If so sounds like you are doing something unsafe and it's exploding |
| 20:32:05 | FromDiscord | <fluff.goose> In reply to @Elegantbeef "Are there bugs with": nope, my usual compile command I paste into my terminal runs fine |
| 20:32:25 | FromDiscord | <fluff.goose> C:/mingw64/bin/ld: C:/mingw64/bin/../lib/LLVMgold.dll: error loading plugin: ↵↵Error: execution of an external program failed: 'clang.exe -o C:\Users\frase\OneDrive\Desktop\NimProjects\Nim\main.exe |
| 20:32:32 | FromDiscord | <fluff.goose> i'm getting this |
| 20:33:03 | FromDiscord | <Elegantbeef> Well I cannot say much seems you're missing a llvm dll |
| 20:33:13 | FromDiscord | <Elegantbeef> Never get issues like this on linux |
| 20:39:56 | FromDiscord | <fluff.goose> In reply to @Elegantbeef "Well I cannot say": what is it I should download for Windows? I went onto the git page for LLVM 18.1.8 and wondering if that is correct? |
| 20:43:33 | FromDiscord | <fluff.goose> nevermind, I think I've got it |
| 20:45:39 | FromDiscord | <pmunch> In reply to @bendugo "<@392962235737047041> Check PM": I saw your PR, but I've been busy being sick |
| 20:52:20 | FromDiscord | <bendugo> In reply to @pmunch "I saw your PR,": Ah ok get better soon! |
| 21:06:15 | * | attah joined #nim |
| 21:16:46 | * | coldfeet quit (Quit: Lost terminal) |
| 21:28:52 | FromDiscord | <fluff.goose> haven't found solutions anywhere, and nobody knows online what LLVMgold is, so I can't use --cc:clang apparently. still crashes with just --cc:clang, and complains with a whole bunch of text when I add in more flags |
| 22:18:43 | FromDiscord | <summarity> Gold is a linker and LLVMgold is gold plugin that provides an interface to libLTO. |
| 22:48:52 | * | ntat quit (Quit: Leaving) |
| 22:53:26 | * | tiorock joined #nim |
| 22:53:26 | * | rockcavera quit (Killed (tantalum.libera.chat (Nickname regained by services))) |
| 22:53:26 | * | tiorock is now known as rockcavera |
| 22:55:32 | * | tiorock joined #nim |
| 22:55:32 | * | rockcavera is now known as Guest9460 |
| 22:55:32 | * | Guest9460 quit (Killed (tungsten.libera.chat (Nickname regained by services))) |
| 22:55:32 | * | tiorock is now known as rockcavera |
| 23:05:37 | * | jjido joined #nim |
| 23:31:40 | * | GnuYawk675 joined #nim |
| 23:31:47 | * | GnuYawk67 quit (Read error: Connection reset by peer) |
| 23:31:47 | * | GnuYawk675 is now known as GnuYawk67 |