| 00:15:48 | FromDiscord | <tvoyglaza> In reply to @mratsim "Most are autogenerated from": Bro... it looks so nice. You intend to create a library for this functionality? |
| 00:24:43 | * | Skippy8 quit (Ping timeout: 276 seconds) |
| 00:39:39 | * | ftajhii quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 00:59:42 | * | beholders_eye quit (Ping timeout: 243 seconds) |
| 01:40:50 | FromDiscord | <jubalrahl> Just sharing some info. I compile with zigcc on windows and to get a gui app using NiGui to open without a command prompt also opening I use passL:"-Wl, --subsystem,windows" and that seems to work for me so far. |
| 01:43:34 | FromDiscord | <11clock> Trying to decide between raylib and SDL3 as my backend. |
| 02:10:31 | * | ftajhii joined #nim |
| 02:45:09 | FromDiscord | <Aceroph> what |
| 02:58:16 | FromDiscord | <11clock> Going with raylib. It has a lot of similarities with MonoGame which will make translation easier. |
| 03:00:19 | FromDiscord | <11clock> Also if nim ends up not working out, porting to a different language wouldn't mean having to redo my entire backend... again. |
| 03:00:29 | FromDiscord | <11clock> Since raylib is on everything. |
| 03:08:09 | FromDiscord | <11clock> "Hmm, procedure was shortened to proc, function was shortened to func... why wasn't method shortened to- oh" |
| 03:11:38 | * | zero`_ joined #nim |
| 03:13:21 | * | zero` quit (Ping timeout: 246 seconds) |
| 03:19:21 | * | zero` joined #nim |
| 03:23:07 | * | zero`_ quit (Ping timeout: 264 seconds) |
| 03:23:36 | * | zero`_ joined #nim |
| 03:27:22 | * | zero` quit (Ping timeout: 276 seconds) |
| 03:27:44 | * | zero` joined #nim |
| 03:31:16 | * | zero`_ quit (Ping timeout: 276 seconds) |
| 03:50:23 | * | rockcavera quit (Remote host closed the connection) |
| 04:57:52 | FromDiscord | <mratsim> In reply to @tvoyglaza "Bro... it looks so": what do you mean? a library to autocreate libraries? |
| 05:08:29 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 05:10:05 | * | deavmi joined #nim |
| 05:14:53 | FromDiscord | <zumi.dxy> In reply to @11clock ""Hmm, procedure was shortened": I go with `mtd` instead↵doesn't have the same ring to it yeah |
| 05:15:30 | FromDiscord | <zumi.dxy> but hey↵if people can shorten `function` to `fun` you may as well, right? |
| 05:16:04 | FromDiscord | <zumi.dxy> this is like the sneed joke of the programming world |
| 05:18:16 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 05:19:24 | * | deavmi joined #nim |
| 05:27:38 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 05:35:15 | * | alexdaguy joined #nim |
| 06:07:14 | FromDiscord | <DetermiedNim1> In reply to @zumi.dxy "I go with `mtd`": mtd is good imo |
| 06:11:26 | * | deavmi joined #nim |
| 06:15:25 | * | deavmi quit (Client Quit) |
| 06:18:08 | * | deavmi joined #nim |
| 06:21:36 | * | deavmi quit (Client Quit) |
| 06:28:48 | * | deavmi joined #nim |
| 06:40:13 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 06:41:48 | * | deavmi joined #nim |
| 06:59:23 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 07:00:55 | FromDiscord | <tempestro> In reply to @11clock ""Hmm, procedure was shortened": damn, what a missed opportunity↵Would be one hell of a based language |
| 07:07:17 | * | deavmi joined #nim |
| 07:18:41 | FromDiscord | <nnsee> In reply to @11clock ""Hmm, procedure was shortened": i found it kinda funny when i saw `def meth(self)` in python's docs: https://github.com/python/cpython/blob/main/Doc/glossary.rst?plain=1#L1357 |
| 07:18:56 | FromDiscord | <nnsee> definitely don't meth yourself, though |
| 07:24:07 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 07:26:33 | * | deavmi joined #nim |
| 07:30:07 | * | deavmi quit (Client Quit) |
| 07:31:22 | * | deavmi joined #nim |
| 07:36:18 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 07:40:34 | * | deavmi joined #nim |
| 07:40:53 | * | alexdaguy quit (Quit: WeeChat 4.9.2) |
| 07:54:11 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 08:00:38 | * | deavmi joined #nim |
| 08:09:30 | * | deavmi quit (Quit: No Ping reply in 180 seconds.) |
| 08:16:31 | * | deavmi joined #nim |
| 08:20:22 | * | deavmi quit (Client Quit) |
| 08:22:05 | * | deavmi joined #nim |
| 09:16:15 | * | termer quit (Remote host closed the connection) |
| 09:17:47 | * | termer joined #nim |
| 10:10:02 | * | beholders_eye joined #nim |
| 10:34:17 | * | beholders_eye quit (Ping timeout: 248 seconds) |
| 10:37:57 | * | beholders_eye joined #nim |
| 11:18:09 | FromDiscord | <11clock> In reply to @tempestro "damn, what a missed": Many libraries made for the love2d framework were named after terms relating to sexual intercourse. |
| 11:19:34 | FromDiscord | <11clock> Although this is generally frowned upon since it makes the community look immature. |
| 11:20:41 | FromDiscord | <11clock> I wonder if there is an esoteric language designed to be as raunchy as possible. |
| 11:39:20 | * | termer quit (Remote host closed the connection) |
| 11:40:51 | * | termer joined #nim |
| 11:42:10 | * | Skippy8 joined #nim |
| 12:15:49 | FromDiscord | <DetermiedNim1> In reply to @11clock "Many libraries made for": really??????? Ive never heard of this |
| 12:17:21 | FromDiscord | <11clock> https://github.com/HDictus/hump |
| 12:23:52 | FromDiscord | <11clock> https://vrld.github.io/HardonCollider/tutorial.html |
| 12:25:21 | FromDiscord | <11clock> https://love2d.org/forums/viewtopic.php?t=230&cf_chl_f_tk=Jywq47st0r0EZNQLFMSi3_eUB8iFfbRP13gwSnBCx.Y-1783081510-1.0.1.1-Aaq2WfL_xTYZYBCBU6FRYyYNioQKjGfMoo_1anb0RM4 |
| 12:26:37 | FromDiscord | <11clock> This practice has died down so most of these types of libraries have been replaced by newer ones. |
| 12:29:04 | * | termer quit (Remote host closed the connection) |
| 12:30:37 | * | termer joined #nim |
| 12:39:45 | FromDiscord | <DetermiedNim1> 😭 |
| 12:42:38 | FromDiscord | <kapendev> Programming used to be more fun, so it makes sense. |
| 12:44:46 | FromDiscord | <kapendev> > Easy gamestate management.↵That's a common noob mistake. You designed something that in theory sounded awesome, but in practice you have no idea how well it works. |
| 12:59:58 | FromDiscord | <tvoyglaza> In reply to @mratsim "what do you mean?": A library do expose C functions from a C code/header |
| 13:01:00 | * | beholders_eye quit (Ping timeout: 245 seconds) |
| 13:05:07 | FromDiscord | <Aceroph> Boner++↵(@11clock) |
| 13:27:52 | FromDiscord | <timbuktu_guy> happy observed independency day everyone 🍻 |
| 13:28:01 | FromDiscord | <timbuktu_guy> (edit) "happy observed independency day everyone 🍻 ... " added "🪇" |
| 13:49:34 | FromDiscord | <Emmanuel M. Smith 🔸> With Nim you can create a distinct type and then borrow what you need, but is there anyway to have everything borrowed? I mainly just need the type isolation from the base type, but now I have to explicitly borrow any thing I use |
| 13:50:54 | FromDiscord | <Emmanuel M. Smith 🔸> Can't the compiler just identify what I'm using and implicitly generate the borrow? |
| 13:52:19 | * | Skippy8 quit (Ping timeout: 265 seconds) |
| 14:07:04 | FromDiscord | <11clock> In nim is it normal to make a module that just lets you import a bunch of common modules in one line? |
| 14:08:18 | FromDiscord | <11clock> I personally hate imports with a passion because, "I am going to use this- oh I need to import it" scrolls to top of file to add import statement |
| 14:09:25 | FromDiscord | <timbuktu_guy> i did that |
| 14:09:34 | FromDiscord | <timbuktu_guy> but it makes the compile slower with the unused imports |
| 14:10:40 | FromDiscord | <timbuktu_guy> https://gist.github.com/savannt/a583f12c842dc5aaded8cd628fa113f3 |
| 14:14:38 | FromDiscord | <_timurski> In reply to @Emmanuel M. Smith 🔸 "Can't the compiler just": I don't think this is possible right now, but theres an open issue for it https://github.com/nim-lang/RFCs/issues/450 |
| 14:23:09 | * | beholders_eye joined #nim |
| 14:46:20 | FromDiscord | <olfactoryhallucinations> @timbuktu_guy Maybe you already know this, but if you were to use `include builtin.nim` instead of `import builtin.nim`, you wouldn't have to export all imports in it. |
| 14:46:43 | FromDiscord | <timbuktu_guy> I figured that out afterwards 😛 hahahaha |
| 14:47:00 | FromDiscord | <timbuktu_guy> thanks though |
| 14:47:47 | FromDiscord | <timbuktu_guy> inversely there should be a single word for import and export |
| 14:47:55 | FromDiscord | <timbuktu_guy> (edit) "inversely there should ... be" added "maybe" |
| 14:48:04 | FromDiscord | <timbuktu_guy> i came up with "bear" |
| 14:49:05 | FromDiscord | <timbuktu_guy> the current use of bear infers both carrying and producing |
| 14:49:08 | FromDiscord | <timbuktu_guy> (edit) "producing" => "yielding" |
| 14:49:13 | * | Jhonny2x4 quit (Quit: Jhonny2x4) |
| 14:49:29 | * | Jhonny2x4 joined #nim |
| 14:49:29 | FromDiscord | <timbuktu_guy> https://media.discordapp.net/attachments/371759389889003532/1522615270164795402/image.png?ex=6a491d79&is=6a47cbf9&hm=3e51c8e62e9373493148fb6588fe0f0c42798bba60c055618b486a0d6c8cdce3& |
| 14:51:55 | FromDiscord | <_timurski> In reply to @timbuktu_guy "i came up with": one of the worst suggestions of all time perhaps |
| 14:52:02 | FromDiscord | <Emmanuel M. Smith 🔸> That's exactly my issue, but it seems like that RFC's been in the backlog for a while↵(@_timurski) |
| 14:52:06 | FromDiscord | <timbuktu_guy> 😂😂😂 |
| 14:52:08 | FromDiscord | <timbuktu_guy> ⚰️ |
| 14:52:42 | * | FromDiscord quit (Remote host closed the connection) |
| 14:52:55 | * | FromDiscord joined #nim |
| 14:53:20 | FromDiscord | <timbuktu_guy> https://media.discordapp.net/attachments/371759389889003532/1522616236645683301/3116_dead.png?ex=6a491e5f&is=6a47ccdf&hm=edf7af1d8e8add256ea6b402ac6e85556da7a86045537e138a1d92648ee1571d& |
| 14:53:45 | FromDiscord | <timbuktu_guy> In reply to @_timurski "one of the worst": the floor is yours, please state your argument |
| 14:53:50 | FromDiscord | <timbuktu_guy> (edit) "yours," => "yours..." |
| 14:54:08 | FromDiscord | <_timurski> In reply to @timbuktu_guy "": this is missing "a burly gay man" |
| 14:54:08 | FromDiscord | <timbuktu_guy> (edit) "In reply to @_timurski "one of the worst": the floor is yours... please state your argument ... " added " 😂 😄" |
| 14:54:42 | FromDiscord | <timbuktu_guy> pride month is over |
| 14:57:45 | FromDiscord | <gesee37> In reply to @Emmanuel M. Smith 🔸 "That's exactly my issue,": Yeah I know it's annoying but technically the fact tht you have to explicitly borrow is not an issue 😅 |
| 14:57:58 | FromDiscord | <gesee37> That's exactly what should happens |
| 14:58:08 | FromDiscord | <zumi.dxy> In reply to @timbuktu_guy "pride month is over": true, it's now wrath month |
| 14:58:49 | FromDiscord | <gesee37> In reply to @Emmanuel M. Smith 🔸 "With Nim you can": The compiler should not try to mess with it.↵That's why you added `distinct` to the type, no ? |
| 14:59:28 | FromDiscord | <gesee37> (edit) "happens" => "happen" |
| 15:00:43 | * | acidsys quit (Ping timeout: 268 seconds) |
| 15:01:45 | * | termer quit (Remote host closed the connection) |
| 15:03:16 | * | termer joined #nim |
| 15:07:52 | FromDiscord | <11clock> For the vs code extension, is it possible to set it to only highlight errors on save? It's probably the most unstable part of the tooling so I'd rather it just fire when I save the file. |
| 15:08:17 | FromDiscord | <_timurski> In reply to @gesee37 "The compiler should not": they're just saying to let the compiler generate the procs for the distinct type automatically |
| 15:08:53 | FromDiscord | <_timurski> which is valid, I could imagine some circumstances where you want a type that can be used for the same things as another type but can't actually be confused with that type |
| 15:09:12 | FromDiscord | <timbuktu_guy> In reply to @11clock "For the vs code": yes? |
| 15:09:32 | FromDiscord | <timbuktu_guy> (edit) "In reply to @11clock "For the vs code": yes? ... " added " in the config- no" |
| 15:12:58 | FromDiscord | <gesee37> In reply to @_timurski "they're just saying to": The problem is that when you make a distinct type, the compiler assume you want the same primitive as a type but with different functionality↵Like redefining thing |
| 15:13:22 | FromDiscord | <_timurski> In reply to @gesee37 "The problem is that": I'm not really sure what you're saying here |
| 15:13:39 | FromDiscord | <_timurski> could you give a concrete example of why it wouldn't work? |
| 15:14:38 | FromDiscord | <gesee37> In reply to @Emmanuel M. Smith 🔸 "With Nim you can": > I mainly just need the type isolation from the base type↵↵Exactly, that's what makes the compiler unable to assume that it need to generate things I guess, so borrowing is a way to tell him "I know that I don't want confusion with this type but reuse this proc" |
| 15:16:03 | FromDiscord | <_timurski> wouldn't it be just a step like "if compiler can't find a specialized proc for DistinctType then it finds a proc for BaseType"? |
| 15:16:40 | FromDiscord | <gesee37> In reply to @_timurski "wouldn't it be just": I guess the name speak for itself, `distinct` not `sub` |
| 15:16:49 | FromDiscord | <_timurski> In reply to @gesee37 "I guess the name": well it's not a sub type |
| 15:17:16 | FromDiscord | <_timurski> actually |
| 15:17:24 | FromDiscord | <_timurski> wait |
| 15:17:58 | FromDiscord | <_timurski> hmm yeah I guess this would really just be equivalent to a comp time subtype |
| 15:19:49 | FromDiscord | <gesee37> I think they are `distinct` type.↵Like saying 2 things are distinct means different, they have no relationship between with exceptions (the `{.brro |
| 15:19:58 | FromDiscord | <gesee37> (edit) "`{.brro" => "`{.borrow.}`" |
| 15:20:04 | FromDiscord | <gesee37> (edit) "`{.borrow.}`" => "`{.borrow.}`)" |
| 15:20:18 | FromDiscord | <gesee37> (edit) "I think they are `distinct` type.↵Like saying 2 things are distinct means different, they have no relationship between ... withsome" added "them," | "them,with ... exceptions" added "some" |
| 15:20:30 | FromDiscord | <gesee37> (edit) "`{.borrow.}`)" => "`{.borrow.}`ed procs)" |
| 15:29:18 | * | Skippy8 joined #nim |
| 15:33:19 | * | Skippy8 quit (Ping timeout: 245 seconds) |
| 15:43:55 | * | Skippy8 joined #nim |
| 15:50:08 | FromDiscord | <11clock> As much as I prefer not to rely too much on AI as a project grows, it's insanely useful for debugging. |
| 15:51:31 | * | acidsys joined #nim |
| 16:44:24 | * | syl quit (Quit: C-x C-c) |
| 16:46:21 | * | syl joined #nim |
| 16:56:27 | * | Jhonny2x4 quit (Quit: Jhonny2x4) |
| 16:56:39 | * | Jhonny2x4 joined #nim |
| 16:57:02 | FromDiscord | <tempestro> If you need all the underlying procs and operators, why declare it `distinct` in the first place? |
| 16:58:46 | FromDiscord | <tempestro> If you really do need `distinct` types that borrow a lot of the underlying code, I'm pretty sure you can write a macro that minimizes the boilerplate |
| 17:17:54 | * | Jhonny2x4 quit (Quit: Jhonny2x4) |
| 17:18:09 | * | Jhonny2x4 joined #nim |
| 17:28:49 | FromDiscord | <mratsim> In reply to @Emmanuel M. Smith 🔸 "Can't the compiler just": {.push borrow.} might work. But borrow is to say, make it a distinct type with its own rule. Automatically borrowing defeats that |
| 17:30:17 | FromDiscord | <mratsim> {.borrow: all.} is fine though |
| 17:35:21 | * | Skippy8 quit (Ping timeout: 272 seconds) |
| 17:52:47 | FromDiscord | <Emmanuel M. Smith 🔸> The RFC has a good example if you can't understand the utility of it |
| 18:22:51 | FromDiscord | <11clock> After thinking back on my macro design a bit, I decided to remove the "~>" operator. It just looks ugly in use. |
| 18:23:11 | FromDiscord | <11clock> Instead I'll add in Ruby's tap method. |
| 18:23:29 | FromDiscord | <11clock> sent a long message, see https://pasty.ee/nRUnSaiW |
| 18:24:10 | FromDiscord | <11clock> Much simpler in implementation, and lets me use a statement list instead of a statement list expression. |
| 18:25:15 | FromDiscord | <11clock> Also it remains general purpose as well as being a nice standin for C#'s object initializers. |
| 18:26:49 | FromDiscord | <_timurski> In reply to @Emmanuel M. Smith 🔸 "The RFC has a": what the other guy made me realize is that it's not really a good name for the concept |
| 18:27:13 | FromDiscord | <_timurski> the example provided shows that really it's just equivalent to a compile time subtype |
| 18:34:49 | * | Skippy8 joined #nim |
| 18:44:50 | FromDiscord | <Emmanuel M. Smith 🔸> I guess my use case is just, I want the compiler to complain when I mix my type with the underlying type without having to use distinct and borrow 10+ things |
| 18:44:50 | FromDiscord | <Emmanuel M. Smith 🔸> As every time I want to use a new built-in, I have to pick the right function from the error suggestions, and then add borrow at the end. And sometimes it's not immediately obvious which one I need |
| 18:44:50 | FromDiscord | <Emmanuel M. Smith 🔸> As every time I want to use a new std built-in, I have to pick the right function from the error suggestions, and then add borrow at the end. And sometimes it's not immediately obvious which one I need |
| 18:45:17 | FromDiscord | <_timurski> In reply to @Emmanuel M. Smith 🔸 "I guess my use": can you give an example of how this would work |
| 18:46:35 | FromDiscord | <_timurski> because if you have `.borrow: all` then your type would fit in basically everywhere the original type does... |
| 18:46:35 | FromDiscord | <_timurski> except for specific overloads for your type |
| 18:46:42 | FromDiscord | <_timurski> (edit) "can" => "~~can" | "work" => "work~~" |
| 18:47:00 | FromDiscord | <_timurski> (edit) "~~can" => "can" | "how this would work~~" => "such a circumstance?" |
| 18:47:07 | FromDiscord | <_timurski> (edit) "In reply to @Emmanuel M. Smith 🔸 "I guess my use": can you give an example of such a circumstance? ... " added "or are you just referring to overloads" |
| 18:48:29 | FromDiscord | <_timurski> that's still useful but doesn't sound like "distinct" anymore |
| 19:11:49 | * | beholders_eye quit (Ping timeout: 276 seconds) |
| 19:42:39 | * | Skippy8 quit (Ping timeout: 252 seconds) |
| 20:55:54 | FromDiscord | <tvoyglaza> sent a long message, see https://pasty.ee/oFCNtEBs |
| 20:56:02 | FromDiscord | <tvoyglaza> Bro, it is so nice! |
| 20:56:45 | FromDiscord | <tvoyglaza> Thanks for the hard work to make it possible |
| 20:57:27 | FromDiscord | <tvoyglaza> All the staff |
| 21:12:06 | FromDiscord | <_araq> what about it? |
| 21:30:20 | FromDiscord | <tvoyglaza> The Nim language brought a nice way to handle with some canonical challenges, such that C/C++ interop, make fast code, ease of use, etc. |
| 21:31:05 | FromDiscord | <DetermiedNim1> you can use cstring instead of openarray[cchar] bt |
| 21:31:06 | FromDiscord | <DetermiedNim1> (edit) "bt" => "btw" |
| 21:34:44 | FromDiscord | <tvoyglaza> In reply to @determiedmech1 "you can use cstring": I just realized that possibility a moment ago. |
| 21:46:15 | * | Skippy8 joined #nim |
| 22:05:10 | * | Skippy8 quit (Ping timeout: 245 seconds) |
| 22:08:18 | * | Skippy8 joined #nim |
| 22:15:19 | * | Skippy8 quit (Ping timeout: 264 seconds) |
| 22:41:07 | * | termer quit (Remote host closed the connection) |
| 22:42:36 | * | termer joined #nim |
| 23:10:08 | * | termer quit (Remote host closed the connection) |
| 23:11:40 | * | termer joined #nim |