<< 23-09-2024 >>

00:00:03*beholders_eye quit (Read error: Connection reset by peer)
00:05:45*beholders_eye joined #nim
00:08:00*xet7 quit (Ping timeout: 246 seconds)
00:22:09*xet7 joined #nim
00:41:26*lucasta joined #nim
00:50:39*beholders_eye quit (Read error: Connection reset by peer)
00:56:09*beholders_eye joined #nim
01:01:57*beholders_eye quit (Read error: Connection reset by peer)
01:02:31*beholders_eye joined #nim
01:18:06*lucasta quit (Quit: Leaving)
01:18:10*SchweinDeBurg quit (Quit: WeeChat 4.5.0-dev)
01:35:49*beholders_eye quit (Read error: Connection reset by peer)
01:41:56*beholders_eye joined #nim
02:09:19*beholders_eye quit (Ping timeout: 260 seconds)
02:52:31FromDiscord<morgan (ping with reply)> anyone know of resources for writing data structures which properly interact with arc/orc? i might use seqs under the hood but i’m still working out the details of something i need to write
02:53:12FromDiscord<morgan (ping with reply)> it’s for efficient search of integer ranges (or float with some compromise)
02:54:41FromDiscord<morgan (ping with reply)> (only 1d ranges for now, higher dimensions are much more complex and more work to figure out lol)
02:57:12FromDiscord<leorize> arc/orc doesn't need any special precautions
02:57:34FromDiscord<leorize> but it's recommended that you avoid cycles in your structure
03:11:50FromDiscord<morgan (ping with reply)> i probably don’t need to do anything that would mess with it
03:12:21FromDiscord<morgan (ping with reply)> but i was thinking like, if i had some memory buffer where stuff was written that got realloc’d as needed
03:12:35FromDiscord<morgan (ping with reply)> surely that would need something to work with arc/orc
03:13:14FromDiscord<leorize> all you need to do is to see if you have to implement hooks
03:14:22FromDiscord<leorize> if you make your own seq for example, you'd want to implement the `=trace` hook to support orc's cycle breaker
03:19:22FromDiscord<morgan (ping with reply)> ok
03:20:43*rockcavera quit (Remote host closed the connection)
03:42:30*SchweinDeBurg joined #nim
04:06:23FromDiscord<xkonti> sent a long message, see https://pasty.ee/xCWbCIWQ
05:34:22FromDiscord<leorize> on top of each module there is the copyright line that you're looking for
05:51:19FromDiscord<xkonti> In reply to @leorize "on top of each": Some of they have it, some don't, they differ a lot. I can simply pick one and create a license file out of it?
05:59:21FromDiscord<leorize> well all MIT requires is the copyright line provided
05:59:38FromDiscord<leorize> so if they don't provide any you don't have any obligation to have one
06:00:18FromDiscord<leorize> Apache 2.0 makes this more explicit by saying it out loud that you only have to keep copyright line if its there
06:02:31FromDiscord<pmunch> https://github.com/cnlohr/rawdrawandroid
06:02:50FromDiscord<pmunch> Anyone wants to wrap this and create an Android app?
06:09:15FromDiscord<leorize> as cool as that sounds, you're effectively abandoning all the useful java-only libraries that helps you deal with touch inputs and all that stuff
06:12:16*derpydoo joined #nim
06:57:23FromDiscord<Jennifer Hammitt> I'm interested if you're willing to put and guild me.↵(@pmunch)
07:00:13*mfg_ joined #nim
07:04:52FromDiscord<xtrayambak> Is there a way to fix this error without changing the structure of this object and not turning it into a `ref object`? https://media.discordapp.net/attachments/371759389889003532/1287671005442998322/image.png?ex=66f26493&is=66f11313&hm=515aacd10b81839737bee02fd616776f874fc0aef8513dcb21b1ba3677cab3d9&
07:10:47*jjido joined #nim
07:16:20*mfg_ quit (Ping timeout: 264 seconds)
07:16:20FromDiscord<Robyn [She/Her]> In reply to @xtrayambak "Is there a way": you could wrap it in an option?
07:16:54FromDiscord<Robyn [She/Her]> the issue here is the recursion, a reference would mean it's nilable, a seq means it can be empty, and an option means it can be none
07:36:24FromDiscord<xtrayambak> In reply to @chronos.vitaqua "the issue here is": ah, alright
07:36:26FromDiscord<xtrayambak> thanks
08:25:54FromDiscord<Robyn [She/Her]> no sweat o7
08:33:24*jjido quit (Quit: My laptop has gone to sleep. ZZZzzz…)
08:42:57*mfg_ joined #nim
08:50:12*derpydoo quit (Quit: derpydoo)
09:16:44FromDiscord<zectbumo> sent a code paste, see https://play.nim-lang.org/#pasty=waUeiZah
09:25:20FromDiscord<pmunch> In reply to @Jennifer Hammitt "I'm interested if you're": Put and guild?
09:37:43FromDiscord<leorize> see https://github.com/nim-lang/Nim/pull/15232↵(@zectbumo)
09:48:35*coldfeet joined #nim
10:34:22*beholders_eye joined #nim
12:27:46*coldfeet quit (Remote host closed the connection)
12:30:54*beholders_eye quit (Ping timeout: 252 seconds)
12:31:38*wikipedia quit (Read error: Connection reset by peer)
12:32:50*wikipedia joined #nim
12:55:12*beholders_eye joined #nim
13:12:34*beholders_eye quit (Ping timeout: 260 seconds)
13:22:45FromDiscord<nocturn9x> has anyone used nimsimd before?
13:23:01FromDiscord<nocturn9x> I need to get the size of `M256i` at compile-time but nim doesn't seem to like that
13:23:07FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "has anyone used nimsimd": Nope but I know a project that uses it
13:23:14FromDiscord<nocturn9x> sent a code paste, see https://play.nim-lang.org/#pasty=FKoSegrF
13:23:28FromDiscord<nocturn9x> the issue is that since it's imported from C then it doesn't know the size
13:23:34FromDiscord<nocturn9x> any way to get around it?
13:23:35FromDiscord<Robyn [She/Her]> Ah...
13:23:45FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "any way to get": You fine with hacky code?
13:23:56FromDiscord<nocturn9x> so long as it's not hardcoding it, yes
13:23:59FromDiscord<nocturn9x> does it involve `emit`?
13:24:12FromDiscord<Robyn [She/Her]> Yeah
13:24:15FromDiscord<nocturn9x> thought so
13:24:28FromDiscord<nocturn9x> I mean it's about as hacky as using AVX2 over FFI
13:24:33FromDiscord<nocturn9x> throw it at me haha
13:24:48FromDiscord<Robyn [She/Her]> My idea is to have another script that emits C code to grab the size, store it in a variable and log the output
13:24:58FromDiscord<nocturn9x> an entire script you say
13:25:02FromDiscord<Robyn [She/Her]> Your main code would grab that output at compile-time via Nimscript
13:25:12FromDiscord<nocturn9x> oh wow that is a LOT more hacky than I thought...
13:25:21FromDiscord<Robyn [She/Her]> Yep, I told ya lol
13:25:31FromDiscord<Robyn [She/Her]> Could just flat-out use a C file and invoke that tbf
13:25:32FromDiscord<nocturn9x> it's a lot of work for one `sizeof`...
13:25:42FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "it's a lot of": Blame Nim :p
13:25:56FromDiscord<zumi.dxy> `{.size.}` only works on enums right?
13:26:02FromDiscord<Robyn [She/Her]> Could bind to C's `sizeof` if you don't mind knowing the size at runtime only
13:26:23FromDiscord<nocturn9x> In reply to @zumi.dxy "`{.size.}` only works": no actuallyt
13:26:29FromDiscord<nocturn9x> (edit) "actuallyt" => "actually it seems to work on incomplete structs too"
13:26:33FromDiscord<nocturn9x> but it doesn't really solve my problem
13:26:39FromDiscord<zumi.dxy> C's `sizeof` is still compile time, no?↵(compile time on C's side)
13:26:41FromDiscord<nocturn9x> I need to find out the size
13:26:44FromDiscord<nocturn9x> In reply to @zumi.dxy "C's `sizeof` is still": yeah
13:27:05FromDiscord<nocturn9x> _The size pragma can also specify the size of an importc incomplete object type so that one can get the size of it at compile time even if it was declared without fields._
13:27:13FromDiscord<nocturn9x> yeah okay but I don't know the size in C
13:27:44FromDiscord<zumi.dxy> I'm guessing m256 is 256-bit, so/
13:27:45FromDiscord<Robyn [She/Her]> In reply to @zumi.dxy "C's `sizeof` is still": Yeah but it'd work in the Nim side at runtime
13:27:53FromDiscord<nocturn9x> In reply to @zumi.dxy "I'm guessing m256 is": that's not guaranteed
13:27:58FromDiscord<nocturn9x> this is no better than hardcoding it :|
13:28:07FromDiscord<zumi.dxy> size: 32?↵well, it is hardcoding it :p
13:28:11FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "this is no better": Don't like the hack? 😔
13:28:19FromDiscord<zumi.dxy> and it's an intrinsic isn't it?
13:28:20FromDiscord<nocturn9x> I mean it doesn't solve the problem
13:28:28FromDiscord<nocturn9x> different platforms are likely to have different sizes for it
13:28:33FromDiscord<nocturn9x> so hardcoding it fixes nothing
13:28:36FromDiscord<Robyn [She/Her]> Oh
13:28:40FromDiscord<Robyn [She/Her]> Then yeah just use C's sizeof
13:28:47FromDiscord<nocturn9x> yeah but nimscript? come on
13:28:51FromDiscord<nocturn9x> there has to be a more compact way lmao
13:29:05FromDiscord<Robyn [She/Her]> I mean at runtime
13:29:12FromDiscord<zumi.dxy> and here I thought even `uint32_t` should be "guaranteed"
13:29:21FromDiscord<nocturn9x> In reply to @zumi.dxy "and here I thought": these are intrinsics
13:29:25FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "yeah but nimscript? come": yeah with `static:`
13:29:26FromDiscord<nocturn9x> it is not the same thing
13:29:39*PMunch joined #nim
13:29:40FromDiscord<nocturn9x> In reply to @chronos.vitaqua "yeah with `static:`": could you show me how you'd do it
13:29:47FromDiscord<nocturn9x> I don't have it clear
13:30:24FromDiscord<nocturn9x> `size may only be 1, 2, 4 or 8`
13:30:26FromDiscord<nocturn9x> wow thanks nim
13:30:28FromDiscord<nocturn9x> entirely useless
13:32:12FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "could you show me": Sure, I'll try!
13:32:18FromDiscord<Robyn [She/Her]> Let me just spin up a Nim compiler
13:34:19FromDiscord<nocturn9x> sent a code paste, see https://play.nim-lang.org/#pasty=uXQICWUi
13:34:23FromDiscord<nocturn9x> (edit) "https://play.nim-lang.org/#pasty=IuuWzVjf" => "https://play.nim-lang.org/#pasty=rBHYKnTe"
13:42:12FromDiscord<nocturn9x> yeah I ended up doing this
13:42:16FromDiscord<nocturn9x> sent a code paste, see https://play.nim-lang.org/#pasty=CMlaMxCq
13:42:26FromDiscord<nocturn9x> I'll switch to @Robyn [She/Her]'s solution if it's cleaner/less hacky
13:44:38FromDiscord<Robyn [She/Her]> Sorry it's a bit tricky since I'm using a Uni computer aha
13:44:50FromDiscord<Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=cEtUzhfr
13:44:59FromDiscord<Robyn [She/Her]> That's defo way cleaner then what I was gonna do
13:45:02FromDiscord<nocturn9x> oh I don't even emit it I just created it manually lol
13:45:08FromDiscord<nocturn9x> it works, so
13:45:52FromDiscord<Robyn [She/Her]> My solution was to execute a Nim file that'd write `sizeof(m256i)` to a file and then it'd `staticRead` it
13:46:02FromDiscord<nocturn9x> oh damn
13:46:03FromDiscord<nocturn9x> lol
13:46:17PMunchUhm, what are you trying to do?
13:48:26FromDiscord<Robyn [She/Her]> In reply to @nocturn9x "oh damn": Very hacky :P
13:48:44FromDiscord<Robyn [She/Her]> When I get home after building my PC (woot woot!) I'll still make a shitty snippet xD
13:51:58FromDiscord<nocturn9x> In reply to @PMunch "Uhm, what are you": get the `sizeof()` of a type imported with importc
13:53:26PMunchDoesn't that "just work" now?
13:55:06FromDiscord<Robyn [She/Her]> In reply to @PMunch "Doesn't that "just work"": Huh?
13:55:22FromDiscord<Robyn [She/Her]> Unless Nim uses C for comp time code now, no don't think so
14:02:12FromDiscord<nocturn9x> In reply to @PMunch "Doesn't that "just work"": clearly no
14:02:16FromDiscord<nocturn9x> I worked around it tho
14:02:19FromDiscord<nocturn9x> works for my use case
14:03:33FromDiscord<Robyn [She/Her]> no compile-time code tho
14:05:31*PMunch quit (Ping timeout: 272 seconds)
14:17:25*mfg_ quit (Ping timeout: 248 seconds)
14:20:14*beholders_eye joined #nim
14:22:45FromDiscord<nocturn9x> yeah well too bad xP
14:34:31*xutaxkamay quit (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
14:34:52*xutaxkamay joined #nim
14:42:22FromDiscord<Robyn [She/Her]> gasp
14:42:30FromDiscord<Robyn [She/Her]> I shall make my hack and you will like it >:(
14:55:21*beholders_eye quit (Ping timeout: 276 seconds)
15:22:41*beholders_eye joined #nim
15:43:13*beholders_eye quit (Ping timeout: 248 seconds)
16:04:23*beholders_eye joined #nim
16:18:44*beholders_eye quit (Ping timeout: 245 seconds)
16:51:10*SchweinDeBurg quit (Quit: WeeChat 4.5.0-dev)
17:08:36*xutaxkamay_ joined #nim
17:10:14*xutaxkamay quit (Ping timeout: 265 seconds)
17:10:15*xutaxkamay_ is now known as xutaxkamay
17:11:35*beholders_eye joined #nim
17:17:19*wikipedia quit (Read error: Connection reset by peer)
17:20:35*wikipedia joined #nim
17:28:07*wikipedia quit (Ping timeout: 265 seconds)
17:28:28*wikipedia joined #nim
17:41:24FromDiscord<carogaph_> hi yall
17:41:29FromDiscord<carogaph_> how do I join the nim cult
17:44:07*coldfeet joined #nim
17:47:47Amun-Rait's too late, you're already in
17:48:35FromDiscord<.bobbbob> 1) dl nim↵2) it just werks (if windows doesnt detect it as malware)
18:03:06FromDiscord<carogaph_> ok but like
18:03:41FromDiscord<carogaph_> I havent started comparing it to C in public discourse while looking like this https://media.discordapp.net/attachments/371759389889003532/1287836804355063808/flat750x075f-pad750x1000f8f8f8.png?ex=66f2fefd&is=66f1ad7d&hm=3347bf11c061ef6fddc3db50bdcb636e98e8d8953ffbb9c57d39996926c3a513&
18:03:55FromDiscord<carogaph_> I mean how do I get to that level of dillusional
18:18:43FromDiscord<Phil> In reply to @carogaph_ "I havent started comparing": If this isn't about nim coding, please move this to #offtopic ↵I'm saying this very explicitly because from what you've been writing since joining, this seems more like trolling than anything.
18:19:12FromDiscord<carogaph_> oh
18:19:13FromDiscord<carogaph_> apolgies
18:19:17FromDiscord<carogaph_> (edit) "apolgies" => "apologies"
18:19:30FromDiscord<carogaph_> I imagined this channel was like a #General
18:19:36FromDiscord<carogaph_> (edit) "#General" => "\#General"
18:19:39FromDiscord<carogaph_> wha
18:19:48FromDiscord<carogaph_> (edit) "\#General" => "<#\371759389889003534>"
18:19:54FromDiscord<carogaph_> (edit) "<#\371759389889003534>" => "#General"
18:20:04FromDiscord<carogaph_> (edit) "#General" => "#\"General""
18:20:12FromDiscord<carogaph_> guhhhh
18:20:33FromDiscord<carogaph_> (edit) "#\"General"" => "`#General`"
18:21:34FromDiscord<Phil> "Like a general channel" - Nah, see channel description↵> Main discussion channel. Feel free to ask any questions about Nim in here. ↵This relates for the most part about more serious nim discussions, e.g. how to work around memory management, coding questions, how you can tackle certain problems architecturally, comparing approaches to other languages and all that jazz
18:21:56FromDiscord<Phil> (edit) "about" => "to"
18:40:53*ntat joined #nim
19:05:18*jjido joined #nim
19:41:17*coldfeet quit (Remote host closed the connection)
19:42:37FromDiscord<rakgew> yay!! finally got it working\: a usb power strip controlled by nim -↵the array[6, byte] looks more readable, thank you! \:-D↵(<@709044657232936960_=41mun-=52a=5b=49=52=43=5d>)
20:05:51Amun-Ra:)
20:10:56*ntat quit (Quit: Leaving)
20:45:40FromDiscord<koaledu> Does Windows still detect Nim/Go/Python as malware? 🤔
20:51:02FromDiscord<Elegantbeef> Does the sun still rise?
20:52:17FromDiscord<blashyrk> Why is the compiler able to produce something for `mySym.getImpl` when I pass it explicitly and not when I manually construct it with `bindSym`?
20:52:34FromDiscord<blashyrk> (edit) "`bindSym`?" => "`genSym`?"
20:53:34FromDiscord<blashyrk> (edit) "Why is the compiler able to produce something for `mySym.getImpl` when I pass it explicitly and not when I manually construct it with `genSym`? ... " added "Since this is library code I cannot use `bindSym` as the symbol is defined outside of the module in user code"
21:03:03FromDiscord<blashyrk> Is there any way to construct a valid sym from `getTypeInst` ? I just want the type's symbol 😄
21:28:35FromDiscord<haywiressc> sent a code paste, see https://play.nim-lang.org/#pasty=IFcVcsCX
21:28:44FromDiscord<haywiressc> and not sure why
21:31:00FromDiscord<Elegantbeef> Your nimble data is broken
21:54:31FromDiscord<blashyrk> Is there a way to access a `static` seq from a `{.compileTime.}` proc? I want a mutable seq that I can access from the compiletime proc
21:57:50FromDiscord<haywiressc> In reply to @Elegantbeef "Your nimble data is": I figured this but I'm not sure how to fix
21:58:34FromDiscord<Elegantbeef> @haywiressc deleting your nimble data may suffice
21:58:53FromDiscord<Elegantbeef> @blashyrk what?
21:59:19FromDiscord<haywiressc> Where was the nimble data again?😅
21:59:29FromDiscord<Elegantbeef> > /home/haywire/.nimble/nimbledata2.json
21:59:40FromDiscord<haywiressc> Oh lmao
21:59:42FromDiscord<haywiressc> Thx
21:59:52FromDiscord<Elegantbeef> Oh I think I get what you meant you want `var mySeq {.compileTime.}: seq[T]`
22:00:14FromDiscord<blashyrk> @ElegantBeef Basically I want a compile time `HashSet[string]` that I can manipulate from a `{.compileTime.}` proc
22:00:24FromDiscord<haywiressc> In reply to @Elegantbeef "<@536164435136479232> deleting your nimble": Would it not break anything to delete the JSON?
22:00:52FromDiscord<Elegantbeef> It will, but your json is broken so... idk what else to say
22:00:56FromDiscord<blashyrk> @ElegantBeef Thank you!
22:01:59FromDiscord<haywiressc> In reply to @Elegantbeef "It will, but your": I can't believe I didn't think earlier to look at the actual error message properly, I'll have a look at the json
22:02:12FromDiscord<haywiressc> It's weird because I haven't modified it manually
22:39:04*disso-peach quit (Quit: Leaving)
22:49:30*beholders_eye quit (Read error: Connection reset by peer)
22:55:05*beholders_eye joined #nim
23:03:38*jjido quit (Quit: My laptop has gone to sleep. ZZZzzz…)
23:42:18*beholders_eye quit (Read error: Connection reset by peer)
23:48:27*beholders_eye joined #nim
23:52:59FromDiscord<spotlightkid> sent a code paste, see https://play.nim-lang.org/#pasty=IVbuUNoN
23:57:28FromDiscord<spotlightkid> I'd be very interested, if this successfully fixes the problem with hanging nimsuggest processes and VS Code for thise using choosenim on posix systems.
23:57:38FromDiscord<spotlightkid> I'd be very interested, if this successfully fixes the problem with hanging nimsuggest processes and VS Code for those using choosenim on posix systems.