<< 16-04-2026 >>

00:00:49*xet7 joined #nim
00:23:11*ftajhii joined #nim
00:59:08*ftajhii quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
01:09:08*ftajhii joined #nim
02:42:23*ftajhii quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
02:48:37*ftajhii joined #nim
03:04:50*xet7 quit (Remote host closed the connection)
03:06:30*xet7 joined #nim
03:11:09*rockcavera quit (Remote host closed the connection)
05:30:18*mrinsane quit (Ping timeout: 248 seconds)
06:12:45*noxp joined #nim
06:25:52FromDiscord<heysokam> Does anyone know if `nkCurlyExpr`, such as `thing{one}` is actually usable syntax for anything?↵AI keeps saying its real, and references parts of the compiler that its supposed to understand/parse it...↵but... I've never seen that syntax ever? 🤔↵Is this a legacy feature thing? Or what is that node about? 🧩 https://media.discordapp.net/attachments/371759389889003532/1494222275677786194/image.png?ex=69e1d26f&is=69e080ef&hm=2e85
06:46:50FromDiscord<nocturn9x> question
06:46:55FromDiscord<nocturn9x> are copy semantics for seqs still weird
06:47:03FromDiscord<nocturn9x> if I do `let x = someSeq` is it deep copied
06:47:07FromDiscord<nocturn9x> what if `x` is `var` declared?
06:47:11FromDiscord<nocturn9x> and what about parameter passing?
06:47:17FromDiscord<nocturn9x> I seem unable to find good up to date info on this
06:54:21FromDiscord<nocturn9x> sent a code paste, see https://play.nim-lang.org/#pasty=rEaHGjtm
06:54:21FromDiscord<nocturn9x> answered myself
06:57:19*noxp quit (Ping timeout: 276 seconds)
07:09:27FromDiscord<blackmius> In reply to @heysokam "Does anyone know if": it is real
07:12:07FromDiscord<heysokam> In reply to @blackmius "it is real": what is it used for? never seen it before
07:14:51FromDiscord<blackmius> its just subscript operator, you can make such for anything
07:15:21FromDiscord<blackmius> i also havent seen std library used it but it doesn’t make it legacy
07:19:59FromDiscord<blackmius> well, i was wrong
07:20:06FromDiscord<blackmius> std uses it
07:20:09FromDiscord<blackmius> https://github.com/nim-lang/Nim/blob/3eb4a60b6bfd11a40cfb7d52459a948b6edf6732/lib/pure/json.nim#L581
07:20:38FromDiscord<blackmius> here search for other occurances↵https://github.com/search?q=repo%3Anim-lang%2FNim%20%20%60%7B%7D%60&type=code
07:21:58FromDiscord<blackmius> not much but such code exists
07:22:36FromDiscord<blackmius> try searxh whole github for nim files containing `proc `{}``
07:22:48FromDiscord<blackmius> (edit) "`proc `{}``" => "proc `{}`"
07:22:57FromDiscord<blackmius> (edit) "`{}`" => "\`{}`"
07:24:38FromDiscord<blackmius> In reply to @nocturn9x "if I do `let": it has never done deep copy
07:24:51FromDiscord<nocturn9x> uh
07:24:53FromDiscord<nocturn9x> sent a code paste, see https://play.nim-lang.org/#pasty=PlRvtDTB
07:25:04FromDiscord<nocturn9x> ig shallow copy?
07:27:44FromDiscord<blackmius> likely it copied seq object↵which is↵len, cap, data ptr
07:28:09FromDiscord<blackmius> and when you appended, you changed len of original
07:28:40FromDiscord<blackmius> while copy still holding same len
07:29:59FromDiscord<blackmius> or i dont know, maybe it recreates data ptr, but doesnt make copy for items
07:30:47FromDiscord<blackmius> easily can find an answer in source codes
07:42:41FromDiscord<blackmius> i havent found explicit =copy hook for seq so i assume it uses default one and then it should only copy seq object without recreating data
07:43:04FromDiscord<blackmius> try change element at index zero and check if in both variables it changed
07:46:38FromDiscord<blackmius> sent a code paste, see https://play.nim-lang.org/#pasty=tHOrbkLl
07:50:38FromDiscord<blackmius> sent a long message, see https://pasty.ee/PEImCYWG
07:52:37FromDiscord<blackmius> sent a long message, see https://pasty.ee/RwqpupfO
07:53:27FromDiscord<blackmius> but still it doesnt look it do deep copy
08:03:22FromDiscord<blackmius> sent a long message, see https://pasty.ee/mdtHyjrg
08:03:48FromDiscord<blackmius> (edit) "https://pasty.ee/kKsnuaHP" => "https://pasty.ee/GIsDMtit"
08:10:33FromDiscord<blackmius> seems i programmed in nim so little that i never shoot myself in foot with seqs passing it back and forth
08:16:45*emery quit (Read error: Connection reset by peer)
08:21:26*emery joined #nim
08:44:09FromDiscord<asviest> In reply to @heysokam "what is it used": It used in https://github.com/planetis-m/vulkan/blob/07669e9c954d2e18e478015504b7b5b1bb32a0ae/src/vulkan.nim#L31324
09:26:58*noxp joined #nim
09:57:59*noxp quit (Ping timeout: 244 seconds)
10:05:40*_________ quit (Ping timeout: 268 seconds)
11:03:56*_________ joined #nim
11:16:19*beholders_eye joined #nim
13:33:33*oculux joined #nim
13:36:38*oculux- quit (Ping timeout: 244 seconds)
14:30:46FromDiscord<heysokam> In reply to @blackmius "https://github.com/nim-lang/Nim/blob/3eb4a60b6bfd11": Interesting! I had no idea about this, ty ✍️
14:31:00FromDiscord<heysokam> In reply to @asviest "It used in https://github.com/planetis-m/vulkan/blo": That's helpful for vulkan indeed!
14:42:14*tokyovigilante quit (Read error: Connection reset by peer)
14:42:31*tokyovigilante joined #nim
14:58:36*joast quit (Quit: Leaving.)
15:00:46*mrinsane joined #nim
15:07:02*SchweinD1 quit (Quit: WeeChat 4.8.0-dev)
15:18:42*SchweinDeBurg joined #nim
15:36:20*joast joined #nim
16:09:43*shrikant joined #nim
16:11:38*beholders_eye quit (Ping timeout: 244 seconds)
16:14:32*beholders_eye joined #nim
16:21:06*beholders_eye quit (Ping timeout: 248 seconds)
18:29:10*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
18:31:49*Lord_Nightmare joined #nim
18:55:39*beholders_eye joined #nim
19:47:30*beholders_eye quit (Ping timeout: 248 seconds)
19:54:54*shrikant quit (Quit: shrikant)