00:00:25 | FromDiscord | <Elegantbeef> I mean I dislike it cause it does not work as the language does |
00:00:38 | FromDiscord | <Elegantbeef> The binding is based off a DSL instead of based off how Nim does dispatch |
00:01:33 | FromDiscord | <Elegantbeef> So if you import a module that has a type that has perimeter, area and contains you have to use some silly DSL to pipe it around |
00:01:50 | FromDiscord | <Elegantbeef> Instead of just doing `MyShape.to(Shape)` |
00:02:08 | FromDiscord | <Elegantbeef> I don't exactly like playing dispatcher and actively avoid it myself |
00:12:07 | * | beholders_eye quit (Ping timeout: 260 seconds) |
00:17:03 | * | FromDiscord quit (Read error: Connection reset by peer) |
00:18:08 | * | FromDiscord joined #nim |
01:10:47 | * | oisota quit (Quit: Ping timeout (120 seconds)) |
01:12:40 | * | oisota joined #nim |
01:23:47 | * | lumidify_ joined #nim |
01:24:00 | * | yeti quit (Ping timeout: 244 seconds) |
01:24:00 | * | lumidify quit (Ping timeout: 244 seconds) |
01:25:11 | * | yeti joined #nim |
02:17:58 | * | FromDiscord quit (Read error: Connection reset by peer) |
02:33:19 | * | FromDiscord joined #nim |
03:46:14 | * | SchweinDeBurg joined #nim |
05:22:26 | * | dicot joined #nim |
05:42:25 | * | skippy8 joined #nim |
05:52:09 | * | skippy8 quit (Quit: WeeChat 4.7.1) |
06:35:02 | * | dicot_ joined #nim |
06:35:16 | * | SchweinD1 joined #nim |
06:35:42 | * | dicot quit (Ping timeout: 256 seconds) |
06:35:42 | * | SchweinDeBurg quit (Ping timeout: 256 seconds) |
06:45:36 | Amun-Ra | ze bridge, it'ssss alive! |
06:51:59 | * | dicot_ quit (*.net *.split) |
06:52:00 | * | FromDiscord quit (*.net *.split) |
06:52:00 | * | yeti quit (*.net *.split) |
06:52:00 | * | lumidify_ quit (*.net *.split) |
06:52:01 | * | Jjp137_ quit (*.net *.split) |
06:52:01 | * | computerquip quit (*.net *.split) |
06:52:01 | * | johuck quit (*.net *.split) |
06:52:01 | * | joast quit (*.net *.split) |
06:52:01 | * | GreaseMonkey quit (*.net *.split) |
06:52:01 | * | redj quit (*.net *.split) |
06:55:20 | * | yeti joined #nim |
06:56:00 | * | dicot joined #nim |
06:56:00 | * | FromDiscord joined #nim |
06:56:00 | * | Jjp137_ joined #nim |
06:56:00 | * | computerquip joined #nim |
06:56:00 | * | johuck joined #nim |
06:56:00 | * | joast joined #nim |
06:56:00 | * | GreaseMonkey joined #nim |
06:56:00 | * | redj joined #nim |
06:57:58 | * | lumidify joined #nim |
08:18:23 | * | beholders_eye joined #nim |
08:19:25 | * | oisota quit (Quit: Ping timeout (120 seconds)) |
08:19:52 | * | oisota joined #nim |
08:21:52 | * | beholders_eye quit (Client Quit) |
08:53:17 | * | beholders_eye joined #nim |
08:59:23 | * | beholder1 joined #nim |
09:05:11 | * | beholders_eye quit (*.net *.split) |
09:16:40 | * | nils` joined #nim |
09:39:45 | FromDiscord | <nelson4o1> I'll help the first 15 people interested on how to start earning $90k within 72hours, but you will reimburse me 10% of your profits when you receive it. Ask me how!! |
09:39:48 | FromDiscord | <nelson4o1> If interested, send me a direct message. For more information…contact via.. TG↵@Nelson_owen↵https://t.me/Nelson_owen |
09:40:10 | Amun-Ra | @admin |
09:40:16 | Amun-Ra | (or whatever the trigger is) |
09:41:40 | * | FromDiscord quit (Remote host closed the connection) |
09:41:53 | * | FromDiscord joined #nim |
11:11:52 | FromDiscord | <mitranim> sent a code paste, see https://play.nim-lang.org/#pasty=FJTMomUk |
11:12:10 | FromDiscord | <mitranim> (edit) "https://play.nim-lang.org/#pasty=zPqHZhjY" => "https://play.nim-lang.org/#pasty=KCZrLSLl" |
11:28:19 | FromDiscord | <mitranim> I suppose the short answer is "for encapsulation". Some things (like resizable maps) just need to be refs. The implementer of a type decides what they need, and the consumer code doesn't need to know. This also minimizes breakage when changing library code. So the only things bugging me about ref objects are:↵ Inherent nil-ness.↵ Mutability under `let`. |
11:28:37 | FromDiscord | <mitranim> (edit) "`let`." => "`let` (very arguable and negotiable)." |
11:32:33 | FromDiscord | <mitranim> Alright, sorted it out. |
12:04:39 | FromDiscord | <Laylie> sent a code paste, see https://play.nim-lang.org/#pasty=nJMoEdLV |
12:05:55 | FromDiscord | <mitranim> Oh, that's actually supported? Interesting. |
12:43:47 | * | skippy8 joined #nim |
13:05:31 | FromDiscord | <janakali> sent a code paste, see https://play.nim-lang.org/#pasty=lZgTxfmm |
13:06:27 | FromDiscord | <mitranim> Good point. I've actually read that and know this already (and it annoys me that Go doesn't do this). My post was about semantics. |
13:08:52 | FromDiscord | <mitranim> The lack of this optimization in Go leads some people to create horrifying APIs where everything is a pointer (unusable, and often wastes performance), while in other cases, performance is often wasted on struct copying. (Our production server probably suffers from the latter, but I'm not willing to give up value types.) |
13:29:51 | * | nils` quit (Quit: nils`) |
13:36:58 | * | skippy8 quit (Quit: WeeChat 4.7.1) |
13:44:41 | * | nils` joined #nim |
14:51:35 | FromDiscord | <kiloneie> Is there a pragma, to silence warnings like cannot open file ? https://media.discordapp.net/attachments/371759389889003532/1418248090749636698/Screenshot_2025-09-18_16-51-20.png?ex=68cd6df6&is=68cc1c76&hm=394711f1ba240f389710cee4a7ad4b8a1651f02d57fa44888b1370d7ff0900c9& |
15:05:46 | FromDiscord | <Robyn [She/Her]> In reply to @kiloneie "Is there a pragma,": no, because being unable to import a file is an error |
15:06:27 | FromDiscord | <Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=afAcMllh |
15:06:37 | FromDiscord | <Robyn [She/Her]> In reply to @kiloneie "Is there a pragma,": But I have to ask... What are you trying to do? |
15:08:36 | FromDiscord | <kiloneie> Inserting main.nim's location, so i don't need to manually update the path if it changes, and i've done that part. Now im trying to test it, and a file isn't opening so i can properly test, since my actual program, for some reason, doesn't require the imports anymore at this moment. |
15:11:41 | Amun-Ra | add config.nims with: switch "path", "somepath" |
15:14:11 | FromDiscord | <kiloneie> That's manual |
15:21:21 | FromDiscord | <Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=ngdyyrTj |
15:21:44 | FromDiscord | <kiloneie> Sounds cool, but infinitely too verbose |
15:22:17 | FromDiscord | <kiloneie> i forgot, but if there is a yellow warning for a proc for something, {.deprecated.} silenced that, i can't remember the specifics |
15:22:28 | FromDiscord | <kiloneie> was hoping for something like that |
15:22:40 | FromDiscord | <kiloneie> one can always make a custom pragma right ? Maybe some other time. |
15:34:19 | * | Procton2 joined #nim |
15:34:22 | * | Procton2 quit (Quit: Client closed) |
15:42:59 | FromDiscord | <kiloneie> It seems that, even if i try to insert the path into "entities.nim" file, before it gets imported, Nim seems to be already running "entities.nim", preventing such behavior. https://media.discordapp.net/attachments/371759389889003532/1418261023642746940/Screenshot_2025-09-18_17-41-57.png?ex=68cd7a02&is=68cc2882&hm=331bdc1e075c355abf9d568f792b617f98f306bf98d847470cb3151d613a2091& |
15:43:18 | FromDiscord | <kiloneie> im 99% sure it's impossible |
15:44:14 | FromDiscord | <kiloneie> so i should just have a program that runs main.nim(i have), or just run a updatePath.exe file before hand, like how people used to do stuff with batch on Windows |
15:44:24 | FromDiscord | <kiloneie> Someone please confirm this 😛 |
15:47:17 | FromDiscord | <janakali> I think you can solve this with nimscript and strdefine |
15:59:37 | FromDiscord | <kiloneie> Gave it 12 minutes, going to .exe solution |
16:15:04 | FromDiscord | <Zoom> Why do you write this? Doesn't `pegs` have it already?↵(@kiloneie) |
16:15:08 | FromDiscord | <Zoom> Yeah, here it is\: https://nim-lang.github.io/Nim/pegs.html#transformFile%2Cstring%2Cstring%2Cvarargs%5Btuple%5BPeg%2Cstring%5D%5D |
16:19:16 | * | beholder1 quit (Ping timeout: 256 seconds) |
16:20:03 | FromDiscord | <kiloneie> Didn't know it existed. |
16:28:33 | FromDiscord | <kiloneie> If you have any examples, let me know, i am too tired for this today. |
16:28:48 | FromDiscord | <Zoom> Also, you shouldn't really open files without handling exceptions like that unless it's a throw-away script. |
16:30:13 | FromDiscord | <Zoom> I don't know what you're doing but overwriting a file like this is also error-prone. Better write to a temporary file (std/tempfiles) and replace. |
16:37:37 | FromDiscord | <kiloneie> readAll, replace one line in the targetFile, is more error prone that doing that with a temp file and replacing ? I will do something about exceptions later though. |
16:42:28 | * | SchweinD1 quit (Quit: WeeChat 4.8.0-dev) |
16:51:42 | FromDiscord | <Zoom> Of course. There's no replacing file contents, unless overwriting bytes on disk, only rewriting the whole file. And overwriting the whole file is more secure when you do it in a more transactional way. Writing to disk is slow, deleting and renaming is faster.↵(@kiloneie) |
16:51:59 | FromDiscord | <Zoom> Of course. There's no replacing file contents, unless overwriting bytes on disk without changing file length, only rewriting the whole file. And overwriting the whole file is more secure when you do it in a more transactional way. Writing to disk is slow, deleting and renaming is faster. |
18:02:00 | * | xtr00 quit (Ping timeout: 245 seconds) |
18:02:55 | * | xtr00 joined #nim |
18:07:55 | * | beholders_eye joined #nim |
20:50:09 | * | skippy8 joined #nim |
21:13:15 | * | rockcavera joined #nim |
23:50:19 | * | skippy8 quit (Quit: WeeChat 4.7.1) |