<< 04-07-2026 >>

00:12:12*shanoaice quit (Quit: The Lounge - https://thelounge.chat)
00:12:52*shanoaice joined #nim
00:21:50FromDiscord<imanuelmav> hi
00:47:18*xet7 quit (Ping timeout: 272 seconds)
00:59:08*xet7 joined #nim
01:04:29*tty303 quit (Ping timeout: 245 seconds)
01:09:18*th3r00t joined #nim
01:41:59*rockcavera joined #nim
04:44:55FromDiscord<11clock> sent a code paste, see https://play.nim-lang.org/#pasty=XqGcBpPL
04:46:45FromDiscord<11clock> 100% compile-time, stateless, preserve's nim's semantics.
04:47:32FromDiscord<11clock> And supporting compound asignments on setters was a pain in the ass
04:47:40FromDiscord<11clock> (edit) "asignments" => "assignments"
04:48:42FromDiscord<11clock> And all of that compiles into normal nim code. It's literally shorthand
04:48:52FromDiscord<11clock> (edit) "shorthand" => "just shortcuts"
04:49:56FromDiscord<11clock> sent a code paste, see https://play.nim-lang.org/#pasty=qGZSxcvw
04:50:41FromDiscord<11clock> (edit) "https://play.nim-lang.org/#pasty=eFDZPINY" => "https://play.nim-lang.org/#pasty=opvYPcKy"
05:06:52FromDiscord<11clock> Also seriously, why are compound assignments the way they are and not syntactic sugar by default.
05:07:08FromDiscord<11clock> I made a few templates and had to put in some hacky workarounds in the DSL to unsugar them.
05:08:18FromDiscord<11clock> Oh well, at least my setter procs work with them reliably now
07:01:38*rockcavera is now known as Guest9251
07:01:38*tiorock joined #nim
07:01:38*Guest9251 quit (Killed (molybdenum.libera.chat (Nickname regained by services)))
07:01:38*tiorock is now known as rockcavera
07:49:06FromDiscord<madonuko> sent a code paste, see https://play.nim-lang.org/#pasty=nDrAzaHe
07:52:57FromDiscord<madonuko> nvm the first issue on github is talking about this, right
08:16:47FromDiscord<11clock> Decided to try using nim without an LSP because it's just too unstable
08:17:02FromDiscord<11clock> I'll try to compensate in other ways
08:38:47FromDiscord<11clock> Oh, apparently I can try setting up nim check with a watcher?
09:24:05*tokyovigilante joined #nim
09:41:00*tokyovigilante quit (Remote host closed the connection)
09:47:25*tokyovigilante joined #nim
09:48:35*tokyovigilante quit (Remote host closed the connection)
09:57:44*beholders_eye joined #nim
09:59:35*tokyovigilante joined #nim
11:12:24*rockcavera quit (Ping timeout: 246 seconds)
11:16:37*rockcavera joined #nim
11:16:37*rockcavera quit (Changing host)
11:16:37*rockcavera joined #nim
11:41:58*karolyi quit (Remote host closed the connection)
12:34:07*karolyi joined #nim
12:54:33*om3ga quit (Ping timeout: 248 seconds)
13:13:19*karolyi quit (Remote host closed the connection)
13:25:14FromDiscord<tvoyglaza> sent a code paste, see https://play.nim-lang.org/#pasty=HBBSlyQs
13:27:24FromDiscord<tvoyglaza> The `method` keyword allow us to use any subtype of `Player`. And also you can give hp the `100` default value.
13:27:26*karolyi joined #nim
13:29:31FromDiscord<tvoyglaza> But you already did a nice work
13:47:18*FromDiscord quit (Remote host closed the connection)
13:47:32*FromDiscord joined #nim
14:33:35*FromDiscord quit (Remote host closed the connection)
14:33:48*FromDiscord joined #nim
14:36:24*FromDiscord quit (Remote host closed the connection)
14:36:37*FromDiscord joined #nim
14:36:52FromDiscord<timbuktu_guy> https://media.discordapp.net/attachments/371759389889003532/1522974477020037260/what-a-full-battleship-broadside-looks-like-uss-iowa-v0-4F07_Qem8OADryns-ykq6HUeauCkW8eQZgk3g7M5YOY.webp?ex=6a4a6c02&is=6a491a82&hm=a03b0e83d9fe0fad8889ba9ace634448c2661a055889757a825e4bcd07d0dfae&
14:45:10*beholders_eye quit (Ping timeout: 256 seconds)
14:55:35*om3ga joined #nim
15:10:30FromDiscord<Phil> In reply to @timbuktu_guy "": I'm not seeing heavy discussion in #main right now that would be interrupted by this so it's fine-ish, but generally, that belongs more in #offtopic ๐Ÿ˜‰
15:11:11FromDiscord<timbuktu_guy> ๐Ÿซก ๐Ÿพ ๐Ÿ† ๐Ÿฅณ ๐Ÿ’ƒ ๐ŸŒž
15:50:33FromDiscord<amun0666> Oh manโ€ฆ I was rooting for the redcoatsโ€ฆ ๐Ÿ˜‰
16:12:18FromDiscord<11clock> sent a long message, see https://pasty.ee/xRRHIWgR
16:13:05FromDiscord<11clock> (edit) "https://pasty.ee/IRvJvliD" => "https://pasty.ee/nuJZvlcV"
16:14:44FromDiscord<11clock> And all that while still just generating normal nim oop under the hood.
16:16:12FromDiscord<11clock> Unfortunately there are a couple of things that are a little less ergonomic.
16:17:53FromDiscord<11clock> Defining fields requires a "var" keyword, and you pretty much should use the factory method rather than direct object initialization so that the init proc gets called.
16:18:35FromDiscord<11clock> (edit) removed "pretty much"
16:19:29FromDiscord<11clock> But I think that those are worthwhile tradeoffs.
16:20:32FromDiscord<11clock> Oh yeah and also regarding method overrides, my macro gives you "super"
16:20:48FromDiscord<11clock> There are probably a couple other advantages I missed
16:21:17*th3r00t quit (Ping timeout: 254 seconds)
16:22:24FromDiscord<11clock> But yeah a lot of thought went into this. I wanted to directly address every issue I had with OOP in every other language I used. Java and C# make it look like boilerplate hell when it doesn't need to be.
16:23:57*beholders_eye joined #nim
16:38:36*Skippy8 joined #nim
16:39:14*Skippy8 quit (Read error: Connection reset by peer)
16:39:34*Skippy8 joined #nim
16:40:03FromDiscord<11clock> nim already does quite a lot of the heavy lifting thanks to its ergonomic syntax, but I wanted to streamline things further, basically.
16:40:20*th3r00t joined #nim