<< 30-10-2024 >>

00:09:42FromDiscord<demotomohiro> In reply to @knakas "Is there a bounty": Supporting Apple II might possible if gcc or clang support that machine and OS.
00:13:35FromDiscord<knakas> There is a cc-65 cross compiler, which doesn’t seem to be nim compatible, but llvm-mos is a cross compiler that supports the 6502 but seems to be focused on the c64. (They share a processor). Seems that cross compilation is the path, but a much bigger lift than I am capable of.
00:14:18FromDiscord<knakas> https://www.thehans255.com/blog/2023/08/apple-ii-llvm-port-part-1/
00:23:28FromDiscord<zumi.dxy> sent a long message, see https://pasty.ee/hSZBuNAS
00:32:29FromDiscord<knakas> Oh that would require me to learn c. There is a reason I’m in this discord! 🤣
00:40:58*alexdaguy joined #nim
00:41:59*_________ quit (Ping timeout: 255 seconds)
00:43:52*_________ joined #nim
01:06:24*cornfeedhobo quit (Remote host closed the connection)
01:06:25*casaca quit (Ping timeout: 260 seconds)
01:06:25*johuck quit (Ping timeout: 260 seconds)
01:09:46*johuck joined #nim
01:09:49*casaca joined #nim
01:11:10*cornfeedhobo joined #nim
01:30:20*robertmeta quit (Ping timeout: 260 seconds)
01:31:59*robertmeta joined #nim
01:52:07*_________ quit (Ping timeout: 252 seconds)
01:53:00*alexdaguy quit (Quit: WeeChat 4.4.2)
01:54:10*_________ joined #nim
02:25:16*cornfeedhobo quit (Remote host closed the connection)
02:25:16*pmp-p quit (Quit: No Ping reply in 180 seconds.)
02:25:58*pmp-p joined #nim
02:26:01*_________ quit (Ping timeout: 265 seconds)
02:26:01*jkl quit (Ping timeout: 265 seconds)
02:26:51*_________ joined #nim
02:27:12*jkl joined #nim
02:28:02*cornfeedhobo_ joined #nim
02:35:58*lucasta quit (Quit: Leaving)
03:03:17FromDiscord<shortymaster> Going through the Nim tutorial, I'm constantly impressed by Nim's flexibility and in-built syntax features. ↵ - (I'm not an experienced programmer, and my first language was Rust, shortly followed by C and Java).↵Is there anything especially interesting features of Nim some of the more aquainted devs find useful?
03:03:51FromDiscord<shortymaster> (edit) "Java).↵Is" => "Java).↵Are" | "anything" => "any"
03:05:29FromDiscord<zumi.dxy> https://peterme.net/tips-and-tricks-with-implicit-return-in-nim.html
03:34:26FromDiscord<.bobbbob> everyone says macros are cool (but ive never onced used them)
04:02:50FromDiscord<zumi.dxy> macros are useful but you don't need them most of the time as a user
04:03:11FromDiscord<zumi.dxy> as a library author though, you might use them to provide syntactic sugar
04:03:29FromDiscord<zumi.dxy> although you would use templates first, when you can
04:03:56FromDiscord<zumi.dxy> (edit) "although you would use templates first, ... whenit's" added "and only" | "and onlywhen ... youwant" added "it's not possible to do what" | "can" => "want you resort to macros"
05:49:17*ntat joined #nim
06:23:32*SchweinDeBurg quit (Quit: WeeChat 4.5.0-dev)
06:23:57*SchweinDeBurg joined #nim
06:24:49*kenran joined #nim
07:08:59FromDiscord<pmunch> In reply to @.bobbbob "everyone says macros are": You're missing out
07:09:38FromDiscord<pmunch> And sure, what Zumi said is generally correct. But I always find some use for tiny macros to just clear things up in my code.
07:10:17FromDiscord<pmunch> It's one of those things that when you know they exist and how to use them you will forever miss them in any language which doesn't have them
08:22:46*ntat quit (Quit: Leaving)
08:36:40FromDiscord<bubbly_avocado_86424> 'morning↵↵is there a way for a loop to call itself without looping infinitely ?
08:41:43FromDiscord<ayex> right, but when you actually need them, it is awesome these powerful constructs are available. 😀↵(@zumi.dxy)
08:43:37FromDiscord<k0ts> In reply to @bubbly_avocado_86424 "'morning is there": As in a recursive proc whose body contains a loop?
09:44:33*johuck quit (Read error: Connection reset by peer)
09:44:35*casaca quit (Read error: Connection reset by peer)
09:49:38FromDiscord<bubbly_avocado_86424> In reply to @k0ts "As in a recursive": looks like that i think
09:57:00*adigitoleo quit (Ping timeout: 248 seconds)
09:57:12*ursa-major quit (Ping timeout: 246 seconds)
09:57:50*noeontheend quit (Ping timeout: 260 seconds)
09:58:25*robertmeta quit (Ping timeout: 260 seconds)
09:58:50FromDiscord<k0ts> Sure, you just need an exit condition. So do the recursive call only if some condition is met, or break if some condition is met.
09:59:23FromDiscord<bubbly_avocado_86424> how do i break that loop ?
09:59:35*mronetwo quit (Ping timeout: 272 seconds)
09:59:47FromDiscord<k0ts> In terms of syntax? Just `break`
10:02:10FromDiscord<bubbly_avocado_86424> sent a long message, see https://pasty.ee/tztxhwsQ
10:05:44*johuck joined #nim
10:07:42*ursa-major joined #nim
10:08:04*adigitoleo joined #nim
10:08:24*robertmeta joined #nim
10:14:09FromDiscord<k0ts> sent a code paste, see https://play.nim-lang.org/#pasty=vTJNtwvW
10:26:49*casaca joined #nim
10:28:54*mronetwo joined #nim
10:31:47FromDiscord<bubbly_avocado_86424> thanks, that much i got covered, the issue is when meeting an array with a mix of key,value and arrays and objects which may recurse further down
10:32:58FromDiscord<bubbly_avocado_86424> In reply to @k0ts "here's an example of": thanks, i'll use that as inspiration↵it is very similar to what i tried but for the use of _, with pairs
10:33:27FromDiscord<bubbly_avocado_86424> (edit) "pairs" => "pairs↵and use of n.items and n.pairs"
10:39:15*noeontheend joined #nim
10:43:29Amun-RaWarning: A custom '=destroy' hook which takes a 'var T' parameter is deprecated; it should take a 'T' parameter
10:43:39Amun-Raso… how can I clear sensitive data with non-var T?
11:42:56FromDiscord<planetis_m> In reply to @Amun-Ra "so… how can I": Don't you have a pointer anyway?
11:43:29FromDiscord<planetis_m> Else you can do what theeading/waitgroups does
11:45:32*johuck quit (Ping timeout: 244 seconds)
11:46:04*noeontheend quit (Ping timeout: 252 seconds)
11:46:51*adigitoleo quit (Ping timeout: 248 seconds)
11:46:55*mronetwo quit (Ping timeout: 260 seconds)
11:46:55*casaca quit (Ping timeout: 260 seconds)
11:47:07*robertmeta quit (Ping timeout: 246 seconds)
11:47:53*ursa-major quit (Ping timeout: 272 seconds)
11:54:22*mronetwo joined #nim
11:54:24*johuck joined #nim
11:54:24*casaca joined #nim
11:54:29*robertmeta joined #nim
11:54:30*noeontheend joined #nim
11:54:35*ursa-major joined #nim
11:54:36*adigitoleo joined #nim
11:57:28Amun-Raplanetis_m: I have arrays and integers
11:59:15Amun-Ragood old C-style method works → zeroMem self.data.addr, self.data.sizeof
12:02:43FromDiscord<bubbly_avocado_86424> sent a long message, see https://pasty.ee/KThBlGPH
12:35:02Amun-Rado you need to modify the value of the myvar declared outside?
12:35:47Amun-Ralet myvar is constant
13:10:44FromDiscord<bubbly_avocado_86424> In reply to @Amun-Ra "let myvar is constant": yeah, i realised and then used a var
13:15:10*ntat joined #nim
13:21:08*Artea quit (Ping timeout: 264 seconds)
13:31:31*m5zs7k_ joined #nim
13:31:33*johuck_ joined #nim
13:31:39*robertmeta_ joined #nim
13:31:46*Jhonny2x4 quit (Ping timeout: 252 seconds)
13:32:04*tanami_ joined #nim
13:32:14*Lord_Nightmare2 joined #nim
13:32:27*johuck quit (Ping timeout: 252 seconds)
13:32:28*dza quit (Quit: Ping timeout (120 seconds))
13:32:28*m5zs7k quit (Quit: m5zs7k)
13:32:28*johuck_ is now known as johuck
13:32:33*robertmeta quit (Ping timeout: 252 seconds)
13:32:33*tanami quit (Ping timeout: 252 seconds)
13:32:34*robertmeta_ is now known as robertmeta
13:33:38*Jhonny2x4 joined #nim
13:33:57*Lord_Nightmare quit (Ping timeout: 276 seconds)
13:34:05*Lord_Nightmare2 is now known as Lord_Nightmare
13:36:11*m5zs7k_ is now known as m5zs7k
13:36:38*fallback quit (Quit: IRCNow and Forever!)
13:45:59*fallback joined #nim
13:46:52*Artea joined #nim
13:47:21*lucasta joined #nim
13:59:58*kenran quit (Remote host closed the connection)
14:15:07*dza joined #nim
14:34:26*cornfeedhobo_ is now known as cornfeedhobo
14:53:56*ntat_ joined #nim
14:54:13*ntat quit (Ping timeout: 252 seconds)
14:58:44*ntat_ quit (Client Quit)
15:34:21*ntat joined #nim
15:37:57*lucasta quit (Quit: Leaving)
15:40:26FromDiscord<latchk3y> hi, probably just popping in and out for this one, but what is the "proper" way to setup a language server and linting for nim inside of neovim? none of the things i've tried have worked very well and resulted in some pretty insanely buggy behavior, so i figure _i'm_ probably the one doing it wrong.
15:40:45FromDiscord<latchk3y> i'm using Coc primarily, if that's of any particular help
15:43:22FromDiscord<odexine> What kind of bugs?
15:43:42FromDiscord<odexine> The experience as of now is quite buggy so it depends on how buggy your experience is
15:45:13FromDiscord<latchk3y> refusal to recognize installed packages, sometimes it doesn't recognize definitions, sometimes it doesn't autocomplete, etc. ↵↵it's just essentially that it feels like it's super inconsistent and doesn't actually recognize anything unless it feels like it, and it won't acknowledge new packages basically at all.
15:46:01FromDiscord<latchk3y> also doesn't inform me about indentation, though that one i only _really_ found out because i intentionally unindented to see if it'd say anything about it
15:46:27FromDiscord<latchk3y> which is to say, i'm not sure how much i _need_ that one, but it would probably be nice so i'm not scrolling to find where i accidently hit tab somewhere
15:52:57FromDiscord<spaceshaman> So they're looking to add macros to the language?
16:31:07FromDiscord<planetis_m> In reply to @Amun-Ra "planetis_m: I have arrays": Fyi you don't need to zero fields inside=destroy it's followed by a =wasmoved call
16:32:03FromDiscord<spaceshaman> Whats gained from nim not allowing you to discard things by default?
16:35:23FromDiscord<odexine> no more "i accidentally forgot this thing had a value returned that was important"? if you think certain procs youve written are more annoying to have this than not, you can add the `{.discardable.}` pragma so you dont need to discard every single time
16:43:12FromDiscord<spaceshaman> I don't think ive run into that much
17:13:27*Deadm0th quit (Read error: Connection reset by peer)
17:25:35FromDiscord<k0ts> Examples: procs like those from std/parseutils that return a value to indicate whether they succeeded, or procs that return a Result. If the return value was allowed to be silently discarded, you might think they were succeeding when in fact they were erroring.
17:26:08Amun-Raplanetis_m: I only needed this for specific use case to clear "sensitive" data
17:29:19Amun-Ra(clearing cyptographic context, which still may be optimized out by the compiler)
17:32:36FromDiscord<k0ts> `discard` also influences how Nim decides the type of a block or lack thereof. In that way it's like the semicolon in some other languages.
18:21:39*adigitoleo quit (Ping timeout: 240 seconds)
18:23:47*adigitoleo joined #nim
18:27:13*lucasta joined #nim
18:38:27*alice quit (Remote host closed the connection)
18:42:18*xet7 quit (Quit: Leaving)
18:48:15*alice joined #nim
19:23:03FromDiscord<jm_sts> In reply to @latchk3y "hi, probably just popping": For this I think you want to check out the tooling channel and see if jmgomez is around
19:27:07FromDiscord<fabric.input_output> which one was that library that had that DSL that compiled to glsl shaders?
19:49:16FromDiscord<demotomohiro> https://github.com/treeform/shady
19:51:41FromDiscord<fabric.input_output> thanks
20:18:36*ntat quit (Quit: Leaving)
20:37:03FromDiscord<omareladly> sent a long message, see https://pasty.ee/lUhdrtVU
20:41:33FromDiscord<Elegantbeef> Given that graphics libraries like vulkan and opengl are standards that abstract away GPUs, you can always attempt to implement your own calls that call underlying procedures for your specific GPU, but it'll be driver and card specific
20:42:36FromDiscord<Elegantbeef> Most people just write a software renderer to learn how GPUs work
20:44:26FromDiscord<Elegantbeef> Well rendering rather
20:59:48FromDiscord<TFed> just like `:` in bash and `nice` commands↵(@k0ts)
21:00:39FromDiscord<TFed> just like `:` in bash and `nice` commands↵nice echo hi; nice false - always nicely true
21:00:41FromDiscord<TFed> just like `:` in bash and `nice` commandsnice echo hi; nice false - always nicely true
21:00:50FromDiscord<TFed> just like `:` in bash and `nice` commands`nice echo hi; nice false` - always nicely true
21:15:37FromDiscord<spaceshaman> In reply to @k0ts "Examples: procs like those": Thats exactly what I was looking for. Ty
21:52:06*acidsys quit (Ping timeout: 244 seconds)
21:52:27*acidsys joined #nim
22:07:05*rockcavera joined #nim
22:22:53FromDiscord<spaceshaman> Is there a plan in the works to deprecate inheritance and allow dynamic type classes a la rust?
22:43:01FromDiscord<TӨMΛ ☠> Where are Nim's libraries stored after you install it with Nimble?
22:43:24FromDiscord<TӨMΛ ☠> I bet I knew the path, but now I'm kinda confused and can't find it anywhere
22:45:41FromDiscord<spaceshaman> Is your username pronounced like tthml?@TӨMΛ ☠
22:46:58FromDiscord<TӨMΛ ☠> It is pronounced "Toma", haha 😄
22:48:35*tiorock joined #nim
22:48:35*tiorock quit (Changing host)
22:48:35*tiorock joined #nim
22:48:35*rockcavera is now known as Guest2853
22:48:35*tiorock is now known as rockcavera
22:50:41*tiorock joined #nim
22:50:41*rockcavera is now known as Guest1547
22:50:41*Guest1547 quit (Killed (mercury.libera.chat (Nickname regained by services)))
22:50:41*tiorock is now known as rockcavera
22:52:22*Guest2853 quit (Ping timeout: 252 seconds)
22:56:26FromDiscord<Elegantbeef> `.nimble/pkgs2`
22:56:40FromDiscord<TӨMΛ ☠> In reply to @toma400 "Where are Nim's libraries": Okay, answering myself - it's `users/[your user name]/.nimble/pkgs` (or `pkg2` for 2.X Nim)
22:56:45*xet7 joined #nim
22:57:20FromDiscord<TӨMΛ ☠> Thing is, I couldn't find `.nimble` folder in the first place - it's in `Users/your_user_name` directory 😄
22:57:22FromDiscord<TӨMΛ ☠> But thank you 🙏
23:33:56*tiorock joined #nim
23:33:56*rockcavera is now known as Guest8201
23:33:56*tiorock is now known as rockcavera
23:36:00*tiorock joined #nim
23:36:00*rockcavera is now known as Guest1005
23:36:00*Guest1005 quit (Killed (lead.libera.chat (Nickname regained by services)))
23:36:00*tiorock is now known as rockcavera
23:37:46*Guest8201 quit (Ping timeout: 252 seconds)
23:53:22*xet7 quit (Remote host closed the connection)
23:57:18*xet7 joined #nim