<< 27-12-2024 >>

00:10:38*beholders_eye quit (Ping timeout: 252 seconds)
02:27:31FromDiscord<.tokyovigilante> just checking, I can't do chained assignment, ie `a = b = c` in nim?
02:31:03FromDiscord<Elegantbeef> Nope there is no return on assignment
02:31:26FromDiscord<Elegantbeef> You could use a proc if you hate your readers
02:49:46*Guest55 joined #nim
02:49:59Guest55PENIS!!!
02:50:38*Guest55 quit (Client Quit)
02:55:38FromDiscord<odexine> Okay
02:55:39rockcaverabrazilian detected!
02:55:48FromDiscord<odexine> What
02:56:15rockcaveraI talk about "PENIS"
02:57:05FromDiscord<odexine> “Damn that’s kinda weird to talk about” (this is a joke)
03:05:27*Ekho- quit (Quit: CORE ERROR, SYSTEM HALTED.)
03:17:27*Ekho joined #nim
04:42:53FromDiscord<demotomohiro> In reply to @.tokyovigilante "just checking, I can't": Allowing `a = b = c` means `a = b` is an expression.↵So `if a = b: discard` become a valid statement.↵Then, when people make a mistake like `if a = b:` while it should be `if a == b:`, there is no compile errors.
04:46:29FromDiscord<odexine> In reply to @demotomohiro "Allowing `a = b": technically no, as if statements require booleans
04:46:49FromDiscord<odexine> a = b will only be valid for those in that case if a and b are both booleans
04:47:02FromDiscord<odexine> so yes, its still a footgun, its not "that bad"
05:33:50*cm_ joined #nim
05:34:46*cm quit (Ping timeout: 244 seconds)
05:34:46*cm_ is now known as cm
06:10:39*thunder joined #nim
06:39:26*GnuYawk6 quit (Quit: The Lounge - https://thelounge.chat)
06:39:47*GnuYawk67 joined #nim
06:43:37*GnuYawk67 quit (Client Quit)
06:44:19*GnuYawk67 joined #nim
07:52:00*coldfeet joined #nim
08:25:21*tokyovigilante_ joined #nim
08:25:25*tokyovigilante quit (Ping timeout: 248 seconds)
08:25:25*tokyovigilante_ is now known as tokyovigilante
09:05:39*xet7 quit (Quit: Leaving)
09:08:18*ntat joined #nim
09:13:01*beholders_eye joined #nim
09:33:46*beholders_eye quit (Ping timeout: 244 seconds)
10:10:46*beholders_eye joined #nim
11:12:16*ntat quit (Quit: Leaving)
11:32:17*coldfeet quit (Quit: Lost terminal)
11:43:24*encyde quit (Quit: WeeChat 4.4.4)
12:45:10*alexdaguy joined #nim
13:32:25*beholders_eye quit (Ping timeout: 260 seconds)
14:19:57FromDiscord<fabric.input_output> TIL xmake supports nim
14:26:12*beholders_eye joined #nim
14:29:46*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
14:32:58*Lord_Nightmare joined #nim
14:39:50FromDiscord<griffith1deadly> In reply to @fabric.input_output "TIL xmake supports nim": xmake very bad at nim support
14:40:18FromDiscord<griffith1deadly> they only check main file, not others for second compile
14:40:22FromDiscord<griffith1deadly> by feelings
14:56:19*alexdaguy quit (Quit: w)
16:17:54*ntat joined #nim
16:21:50FromDiscord<jm_sts> sent a code paste, see https://play.nim-lang.org/#pasty=MnFieOvM
16:26:20FromDiscord<bostonboston> The indentation doesn't look the same, but I couldn't tell you if that's the cause
16:33:01FromDiscord<k0ts> please send your macros so people can try it for themselves
16:33:35FromDiscord<k0ts> sent a code paste, see https://play.nim-lang.org/#pasty=xIXAFzoM
16:34:03FromDiscord<k0ts> as for why, one might guess it had something to do with ``div`` being a stropped infix operator, because the same thing happens for say ``mod``
16:50:06FromDiscord<jm_sts> In reply to @k0ts "as for why, one": It works for `body` as well
16:51:00FromDiscord<jm_sts> My code is at https://github.com/jmsapps/NTML
16:53:22FromDiscord<jm_sts> sent a code paste, see https://play.nim-lang.org/#pasty=XFxCljKH
16:53:42FromDiscord<jm_sts> (edit) "https://play.nim-lang.org/#pasty=odCuhhRK" => "https://play.nim-lang.org/#pasty=QzFTchXH"
16:59:07FromDiscord<jm_sts> In reply to @jm_sts "It works for `body`": The reason I mention that it works for `body` is because they are both `NtmlElementKind` of `compositeElement`, same with `ul`, so theoretically they should all behave identically
18:34:03*beholders_eye quit (Ping timeout: 276 seconds)
18:43:26FromDiscord<jm_sts> sent a code paste, see https://play.nim-lang.org/#pasty=BWIEFTIC
20:05:19FromDiscord<emmuni> In reply to @jm_sts "Here is the macro:": why do you use a macro for this?
20:19:17Amun-Rawhat's xmake?
20:19:31Amun-Raah, poor man's cmake
20:33:46FromDiscord<Robyn [She/Her]> Maybe I should roll my own game framework/engine
20:37:22FromDiscord<Robyn [She/Her]> nope I'll be stuck here forever, nvm
20:41:35FromDiscord<marioboi3112> In reply to @chronos.vitaqua "Maybe I should roll": [smirk~1](https://cdn.discordapp.com/emojis/890661298252181554.webp?size=48&name=smirk%7E1)
20:41:50FromDiscord<Robyn [She/Her]> In reply to @marioboi3112 "[smirk~1](https://cdn.discordapp.com/emojis/8906612": embeds don't work here
20:42:06FromDiscord<marioboi3112> they're not allowed or they don't work?
20:43:11FromDiscord<Robyn [She/Her]> In reply to @marioboi3112 "they're not allowed or": The permission is disabled
20:44:39FromDiscord<marioboi3112> In reply to @chronos.vitaqua "The permission is disabled": ohhh makes sense, my bad
20:47:24*beholders_eye joined #nim
20:47:57FromDiscord<marioboi3112> speaking of the engine, is it a hobby project or sth you wanted to make cause you couldn't find it somewhere else
20:50:32FromDiscord<jm_sts> In reply to @emmuni "why do you use": How would you do it?
20:51:02FromDiscord<angelsdust> Looks like normal node/lexial parsing no?
20:54:48*beholders_eye quit (Ping timeout: 265 seconds)
20:57:00FromDiscord<jm_sts> Should it be a template?
20:58:55FromDiscord<angelsdust> well why are you generating html in nim?
20:59:19FromDiscord<emmuni> In reply to @jm_sts "How would you do": code aside, a function would suffice?
20:59:58FromDiscord<Robyn [She/Her]> In reply to @marioboi3112 "speaking of the engine,": I wanna make a game but with Nim, I've looked at NimForUE but it's kinda... Eh
21:00:17FromDiscord<jm_sts> In reply to @emmuni "code aside, a function": Can a function accept varargs[untyped]?
21:00:27FromDiscord<jm_sts> In reply to @angelsdust "well why are you": Hobby
21:00:41FromDiscord<Robyn [She/Her]> I wanna be able to run it on at least Linux and Windows with good performance but don't want to spend too much time focusing on figuring out rendering APIs
21:00:50FromDiscord<angelsdust> In reply to @jm_sts "Hobby": What is the goal?
21:00:58FromDiscord<angelsdust> I want to prevent an xyproblem situation
21:01:01FromDiscord<emmuni> In reply to @chronos.vitaqua "I wanna be able": SDL? it doesn't require u to learn much about reading
21:01:18FromDiscord<emmuni> (edit) "reading" => "rendering"
21:01:18FromDiscord<marioboi3112> In reply to @chronos.vitaqua "I wanna make a": oh, so you wanted to do 3d stuff, cool cool
21:01:26Amun-Rajm_sts: untyped? no
21:01:55FromDiscord<marioboi3112> In reply to @chronos.vitaqua "I wanna be able": have you tried nim godot, nim panda, naylib, opengl, or used other c/cpp libs with nim?
21:02:23Amun-Rago SDL2
21:02:52FromDiscord<jm_sts> In reply to @angelsdust "What is the goal?": I want to build out a framework
21:02:59FromDiscord<emmuni> In reply to @Amun-Ra "go SDL2": SDL 3 is out
21:03:02FromDiscord<marioboi3112> In reply to @Amun-Ra "go SDL2": i think they wanted 3d dev
21:03:09FromDiscord<Robyn [She/Her]> In reply to @emmuni "SDL? it doesn't require": any docs?
21:03:13FromDiscord<angelsdust> In reply to @jm_sts "I want to build": Ah, right, let me respond in a sec
21:03:15Amun-RaSDL3 iirc is not yet stable
21:03:30FromDiscord<emmuni> it is used by games like counter strike 2
21:03:31FromDiscord<emmuni> lol
21:03:47FromDiscord<emmuni> https://github.com/libsdl-org/SDL
21:04:04Amun-Rawell, 2 months ago it wasn't
21:04:19Amun-Ra(but I've to check last commit of my sdl3 wrapper)
21:05:05Amun-Rahmm, I was right, 2 months ago API wasn't stable yet, https://github.com/amnr/nsdl3
21:05:16FromDiscord<Robyn [She/Her]> In reply to @marioboi3112 "have you tried nim": I've been using Godot but I'm having movement issues bc of it so I'm wondering atp if I can use something in Nim and have more familiarity with the APIs
21:05:26FromDiscord<Elegantbeef> Amun the API is stable now
21:05:29FromDiscord<Elegantbeef> So it's stablish 😄
21:05:49Amun-Rathanx Elegantbeef, I have work to do :P
21:06:18FromDiscord<marioboi3112> In reply to @chronos.vitaqua "I've been using Godot": wdym use something in Nim, were you using gdscipt or nim with godot?
21:06:33FromDiscord<marioboi3112> (edit) "In reply to @chronos.vitaqua "I've been using Godot": wdym use something in Nim, were you using gdscipt or nim with godot? ... " added "initially"
21:06:37FromDiscord<Robyn [She/Her]> In reply to @marioboi3112 "wdym use something in": I was using GDScript before but it's unrelated to the issue
21:06:48FromDiscord<marioboi3112> In reply to @chronos.vitaqua "I was using GDScript": ah, interesting
21:07:02FromDiscord<Robyn [She/Her]> I would look at Sokol but it looks pretty low-level
21:07:24FromDiscord<angelsdust> In reply to @jm_sts "I want to build": I would either go a templaing (html) method, or store every html node as a well node
21:07:30FromDiscord<angelsdust> and then generate it when needed
21:07:31FromDiscord<emmuni> nim is a low-level language btw
21:07:42FromDiscord<angelsdust> I am working on a webframework as well and poke #webdev periodically
21:08:05FromDiscord<marioboi3112> In reply to @chronos.vitaqua "I would look at": exengine looked good but they dont have docs so :/
21:08:32FromDiscord<jm_sts> In reply to @angelsdust "I would either go": Do you have any visual examples?
21:08:53FromDiscord<jm_sts> In reply to @angelsdust "I am working on": I’ll peek in there once in a while, i have a lot to learn from you guys
21:08:55FromDiscord<emmuni> either way, i stopped chasing my game dev dreams but i'd either go SDL 3.0 or godot engine
21:09:02FromDiscord<angelsdust> In reply to @jm_sts "Do you have any": Of nodes? like these https://en.wikipedia.org/wiki/Tree_(abstract_data_type)?
21:09:44FromDiscord<jm_sts> In reply to @angelsdust "Of nodes? like these": I understand in theory what you mean
21:10:15FromDiscord<Elegantbeef> @Robyn [She/Her] was raylib too lowlevel?
21:10:48FromDiscord<angelsdust> In reply to @jm_sts "I understand in theory": Sadly it has the downside of you always have to store the entire html as nodes _and_ you have to generate it all which is neither memory efficient or cpu efficient but it works well
21:11:00FromDiscord<angelsdust> Something like jinja or any other templating like would be easier
21:11:06FromDiscord<angelsdust> but then in your own way
21:11:47FromDiscord<jm_sts> Right. Hmm
21:13:20FromDiscord<jm_sts> I could just create syntax sugar for direct dom manipulation, i suppose thats the standard js framework thing to do
21:13:45FromDiscord<angelsdust> These days they use shadow doms even, but you building front-end library?
21:14:44FromDiscord<jm_sts> Yeah like the look and feel of react but no vdom
21:15:32FromDiscord<jm_sts> But like one step at a time and i figure out how i want to build it as i go
21:15:33FromDiscord<angelsdust> front-end lib in nim will be interesting
21:15:40FromDiscord<saint._._.> In reply to @chronos.vitaqua "I wanna make a": What game are you planning on making?
21:15:49FromDiscord<angelsdust> GTA 6 :KEKW: /s
21:16:18FromDiscord<Elegantbeef> I really hope robyn is like "A 2D platformer" where it takes a few hours to make a renderer for 😄
21:16:57FromDiscord<Robyn [She/Her]> In reply to @emmuni "nim is a low-level": I'd say it's a high level lang with low level capabilities
21:16:58FromDiscord<saint._._.> In reply to @angelsdust "GTA 6 <:KEKW:946256349057142824> ": 🤯
21:17:19FromDiscord<Elegantbeef> It's not assembly so yes it's a high level language
21:17:20FromDiscord<emmuni> In reply to @chronos.vitaqua "I'd say it's a": then you're wrong lol, it is by definition a low level language, all compiled languages are
21:17:28FromDiscord<Elegantbeef> No they're not
21:17:28FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "<@524288464422830095> was raylib too": raylib is opengl smh
21:17:32FromDiscord<emmuni> just cuz the syntax looks high level doesn't mean shit
21:17:33FromDiscord<angelsdust> In reply to @Elegantbeef "It's not assembly so": asm isnt even low, byte code is
21:17:57FromDiscord<Elegantbeef> People out here saying C a low level language
21:18:13FromDiscord<Elegantbeef> Low level is machine code, high level is anything that is not machine code
21:18:21FromDiscord<angelsdust> Have you ever even made your own punch card? if not, dont talk about low 😤 /s
21:18:23FromDiscord<Robyn [She/Her]> In reply to @emmuni "then you're wrong lol,": that seems like a massive statement to say, this means brainfuck is high and low level
21:18:33FromDiscord<Elegantbeef> > raylib is opengl smh↵Soooo what?
21:19:00FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "> raylib is opengl": fair point, i csn always replace it
21:19:14FromDiscord<Elegantbeef> Why would you?
21:19:26FromDiscord<Elegantbeef> You want to target windows and linux
21:19:27FromDiscord<Elegantbeef> Opengl is supported on both
21:20:07FromDiscord<Elegantbeef> People have successfully been deluded in thinking opengl is incapable of rendering now
21:20:30FromDiscord<angelsdust> Only vulkan exists
21:20:45FromDiscord<angelsdust> Anything else is just phony stuff made up by big video card companies /s
21:20:51FromDiscord<Elegantbeef> Except if you're targetting Xbox/Mac/IOS
21:21:16FromDiscord<angelsdust> I mean, we ignore the entire Apple existsance
21:21:22FromDiscord<angelsdust> (edit) "existsance" => "existance"
21:21:25FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "People have successfully been": But performanceeeee
21:21:32FromDiscord<Elegantbeef> What about performance?
21:21:39FromDiscord<angelsdust> slapping AI framegen and TAA on something blurry is not performance
21:21:41FromDiscord<Elegantbeef> Opengl isn't inherently slower
21:21:46FromDiscord<Elegantbeef> Especially modern opengl
21:21:55FromDiscord<Robyn [She/Her]> Oh
21:21:56FromDiscord<Elegantbeef> Raylib is not modern opengl though....
21:22:13FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "*Raylib is not modern": Doesn't it support OpenGL 4?
21:22:27FromDiscord<Elegantbeef> That's not modern still
21:22:27FromDiscord<Elegantbeef> 4.5+ is
21:22:40FromDiscord<Robyn [She/Her]> Can always replace RLGL with a Sokol-based API /j
21:22:47FromDiscord<Elegantbeef> Not that you'd use it but DSA is a godsend and a modern API
21:23:07FromDiscord<Elegantbeef> Instead of modifying global state to change a field on a gl resource you just pass in the gl resource
21:23:08FromDiscord<Robyn [She/Her]> Oh Beef you've used Sokol, right? How is it compared to Raylib in terms of simplicity
21:23:11FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "Not that you'd use": DSA?
21:23:14FromDiscord<Elegantbeef> What a novel idea!
21:23:19FromDiscord<Elegantbeef> Direct storage access
21:23:28FromDiscord<Elegantbeef> I've looked at sokol, it's nothing like raylib afaik
21:23:36FromDiscord<Elegantbeef> It's an abstraction of graphics APIs from what I can see
21:24:18FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "Direct storage access": I have no clue what that means, unless it means that instead of a reference you can hold the actual structure itself or smth?
21:24:19FromDiscord<Elegantbeef> I'm of course really biased in the view that "Opengl4.5 is the place to write code as a solo dev"
21:24:26FromDiscord<Elegantbeef> I literally told you
21:24:31FromDiscord<Elegantbeef> > Instead of modifying global state to change a field on a gl resource you just pass in the gl resource
21:24:40FromDiscord<Robyn [She/Her]> oh I didn't see the message
21:25:06FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=JkgLGTWX
21:25:22FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#pasty=bcpYPOMY
21:25:50FromDiscord<Elegantbeef> But again it hardly matters given that you're using raylib
21:25:56FromDiscord<Elegantbeef> It abstracts that from you
21:26:41FromDiscord<Elegantbeef> Oh it supports opengl4.3
21:28:01FromDiscord<Elegantbeef> So at least it has SSBO support
21:29:27FromDiscord<Elegantbeef> It's a bit funny though to talk about performance and not using a bespoke renderer
21:37:13*ntat quit (Quit: Leaving)
21:41:12FromDiscord<thepotatochronicler> Raylib was made originally made to run as an easy debug GUI, using it standalone came after, so it lacks a lot of DX :sadge:
21:41:39FromDiscord<Elegantbeef> DX?
21:41:46FromDiscord<thepotatochronicler> In reply to @Elegantbeef "DX?": Developer eXperience
21:42:09FromDiscord<thepotatochronicler> Like, how nice it is to use from a development standpoint
21:42:10*thunder quit (Remote host closed the connection)
21:42:47*thunder joined #nim
21:42:59FromDiscord<thepotatochronicler> GTK ain't stellar either, but it don't make you call opengl/vulkan/whatever yourself
21:43:08FromDiscord<Elegantbeef> You're the first person to abbreviate that
21:43:40FromDiscord<thepotatochronicler> In reply to @Elegantbeef "You're the first person": https://en.wikipedia.org/wiki/User_experience#Developer_experience
21:43:46FromDiscord<thepotatochronicler> It has it's own entry on wikipedia
21:49:00FromDiscord<fabric.input_output> In reply to @Elegantbeef "You're the first person": bro's been living under a rock
21:49:19FromDiscord<Elegantbeef> Hey we're talking about graphics APIs and they mention 😱
21:49:22FromDiscord<Elegantbeef> I'm hardly to blame
21:49:27FromDiscord<Elegantbeef> Lol thank's element
21:50:06FromDiscord<Elegantbeef> dx is what that emoji was supposed to be for context
22:18:40FromDiscord<Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=XzaRuRJA
22:18:49FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "It's a bit funny": bespoke renderer?
22:20:41FromDiscord<Elegantbeef> Directly using graphics APIs to render your specific project
22:27:58FromDiscord<nnsee> i thought they were referring to directx
22:29:00FromDiscord<Elegantbeef> Look who was living under the rock with me
22:30:32FromDiscord<nitely_> is there a way to get resolved/inferred {.raises: [...].} for a proc generated in macro code?
22:31:23FromDiscord<Elegantbeef> https://nim-lang.org/docs/effecttraits.html
22:32:12FromDiscord<Elegantbeef> You'd need to wrap these inside a `macro getForbids(p: proc): untyped = p.getForbidsList()`
22:39:23FromDiscord<Robyn [She/Her]> In reply to @Elegantbeef "Directly using graphics APIs": ah
23:05:47FromDiscord<System64 ~ Flandre Scarlet> What's the best? NimLangServer or NimLSP?
23:06:05FromDiscord<Elegantbeef> Yes
23:06:53FromDiscord<System64 ~ Flandre Scarlet> In reply to @Elegantbeef "Yes": They are the same?
23:07:01FromDiscord<bosinski2023> well, it depends..
23:07:14FromDiscord<System64 ~ Flandre Scarlet> The most stable at least
23:08:49FromDiscord<System64 ~ Flandre Scarlet> Ah, nimlangserver handles crashes better
23:09:04FromDiscord<Elegantbeef> No, they are different but they both work and both have issues ime
23:09:05FromDiscord<Elegantbeef> I tend to have a better experience with nimlsp
23:09:06FromDiscord<Elegantbeef> But I've also had issues with projects on nimlsp