00:00:11 | * | krux02 quit (Ping timeout: 272 seconds) |
00:00:42 | FromDiscord | <Elegantbeef> What a shitty description 😄 |
00:02:04 | FromDiscord | <Elegantbeef> It's an open protocol for video, text and voice |
00:02:57 | FromDiscord | <sunpoke04> In reply to @Elegantbeef "It's an open protocol": aka "not discord" discord |
00:03:22 | FromDiscord | <Elegantbeef> If you think discord owns the premise of video, text and voice sure |
00:04:28 | FromDiscord | <sunpoke04> they don't own it, the app just looks like discord |
00:04:30 | FromDiscord | <sunpoke04> acts like it |
00:04:39 | FromDiscord | <Elegantbeef> I mean element does |
00:04:46 | FromDiscord | <sunpoke04> so it's discord-like enough :d |
00:04:54 | FromDiscord | <Elegantbeef> But it's an open protocol so what one client does does not mean matrix is discord-like 😄 |
00:05:12 | * | cornfeedhobo joined #nim |
00:05:42 | FromDiscord | <sunpoke04> it's a joke, sir... |
00:05:50 | FromDiscord | <Elegantbeef> I know |
00:06:21 | FromDiscord | <Elegantbeef> I'm just overly annoyed with using proprietary names for things |
00:07:49 | FromDiscord | <sunpoke04> you say like some of them aren't good products that comparing to them would be a good thing... but oki |
00:07:54 | FromDiscord | <sunpoke04> me gonna cod |
00:08:00 | FromDiscord | <Robyn [She/Her]> In reply to @Elegantbeef "*I'm just overly annoyed": Lol |
00:08:34 | FromDiscord | <sunpoke04> (edit) "cod" => "code" |
00:23:49 | NimEventer | New thread by icedquinn: Austral (a simple-ish language with a linear type system), see https://forum.nim-lang.org/t/11230 |
01:00:02 | * | nazgulsenpai quit (Quit: ZNC 1.8.2 - https://znc.in) |
01:03:28 | * | nazgulsenpai joined #nim |
01:30:42 | * | def- quit (Quit: -) |
01:35:01 | FromDiscord | <litlighilit> In a macro, is there a way to determine if a identifier has been declared ? |
01:35:09 | FromDiscord | <litlighilit> sent a code paste, see https://play.nim-lang.org/#pasty=fhsqJcUPhYMt |
01:35:33 | FromDiscord | <litlighilit> sent a code paste, see https://play.nim-lang.org/#pasty=iytCQbsclamx |
01:35:54 | FromDiscord | <litlighilit> sent a code paste, see https://play.nim-lang.org/#pasty=uavtvmngoVqf |
01:38:06 | * | def- joined #nim |
01:38:34 | FromDiscord | <litlighilit> sent a code paste, see https://play.nim-lang.org/#pasty=OrNpENACSMNq |
01:39:52 | FromDiscord | <litlighilit> sent a code paste, see https://play.nim-lang.org/#pasty=ydyxmhhPWVHo |
01:42:38 | FromDiscord | <Robyn [She/Her]> Why not accept a `ident: typed` param then check what the AST is due it? |
01:42:46 | FromDiscord | <Robyn [She/Her]> (edit) "due" => "in" |
01:47:39 | FromDiscord | <litlighilit> If a param is `typed`, then it means it will be resolved the moment it's passed as a argument. |
01:48:40 | FromDiscord | <litlighilit> So if such a argument is a identifier that is not declared, it'll just turn out a compiling error |
01:52:34 | FromDiscord | <litlighilit> I'm thinking such a function must be a `magic`...(as it accesses compiler infomation).↵↵So maybe there is no way to achieve it? |
02:37:54 | * | krux02_ quit (Remote host closed the connection) |
03:21:41 | * | rockcavera joined #nim |
03:38:51 | arkanoid | why generic types are inferred for procs but not when instantiating objects? https://play.nim-lang.org/#pasty=KouGrLiVatzf |
03:39:23 | arkanoid | this forces me to create dump init functions that are just a list of parameters to fields |
03:39:39 | arkanoid | s/dump/dumb |
03:40:38 | FromDiscord | <Elegantbeef> It's a unimplemented feature |
03:41:00 | arkanoid | oh, ok. Fair |
03:41:48 | arkanoid | I was expecting an asnwer like: this can't be done as blah you must understand that bleh |
03:42:10 | arkanoid | this makes me feel better |
03:42:18 | FromDiscord | <Elegantbeef> Nope it just involves someone willing to insert code where it errors |
03:42:18 | arkanoid | thanks! |
03:42:34 | FromDiscord | <Elegantbeef> Iterate the constructor find fields insert into generic attempt to instantiate |
03:44:05 | arkanoid | I do remember that there's a package about creating dumb constructors |
03:44:15 | arkanoid | can't remember the name |
03:44:46 | arkanoid | oh ! https://nimble.directory/pkg/constructor |
03:44:57 | FromDiscord | <Elegantbeef> Lol |
03:45:11 | FromDiscord | <Elegantbeef> Really bad name who'd remember that |
03:48:04 | arkanoid | let's see if that works when typeclasses are in place |
03:50:47 | arkanoid | nope, it doesn't :( |
03:51:26 | FromDiscord | <Elegantbeef> What're you trying? |
03:55:25 | arkanoid | using contructor {.defaults: {}.} on a type with generic [T] |
03:56:06 | FromDiscord | <Elegantbeef> Ah yea Patito started on helping with that but the compiler said no |
03:57:24 | arkanoid | would {.constr.} work instead? |
03:57:39 | arkanoid | (I'm experimenting in the meanwhile) |
03:58:25 | FromDiscord | <Elegantbeef> How are you wanting to do the construction? |
04:00:14 | arkanoid | something like https://play.nim-lang.org/#pasty=VqOvKCbJuhGp |
04:00:42 | arkanoid | actually I'd like: proc initFoo[T](bar: T): Foo[T] {.constr.} |
04:02:49 | FromDiscord | <Elegantbeef> Ah nice a micros bug 😄 |
04:03:34 | FromDiscord | <Elegantbeef> https://play.nim-lang.org/#pasty=fEmqvCMedZAw |
04:03:40 | FromDiscord | <Elegantbeef> That's the best way to do generic constructors |
04:05:14 | arkanoid | yeah I no about the initFoo vs Foo.init thing. There's no much difference to me |
04:05:37 | FromDiscord | <Elegantbeef> That wasn't the point of my code |
04:05:50 | FromDiscord | <Elegantbeef> But I'm on my quest to fix constructor |
04:06:27 | arkanoid | oh, apologies, then I didn't get it. Let me re-read |
04:06:59 | FromDiscord | <Elegantbeef> The point was to make it a generic constructor that works on all your types 😄 |
04:11:06 | arkanoid | well, that would save me from this (working) monster https://play.nim-lang.org/#pasty=yXUoFOFWkwWh |
04:11:41 | FromDiscord | <Elegantbeef> Damn |
04:11:42 | FromDiscord | <Elegantbeef> That's some code |
04:12:18 | FromDiscord | <Elegantbeef> You could make that less ass if you did `a, b, c: T` |
04:12:21 | FromDiscord | <Elegantbeef> It's only a tingle less ass but it's less ass |
04:13:43 | arkanoid | yes, even if parameter have same type, they are not so logically tight to bundle them visually like that |
04:13:45 | arkanoid | but yeah |
04:14:01 | FromDiscord | <Elegantbeef> That API is really why the factory(or is it builder?) pattern exists |
04:14:59 | arkanoid | I don't even remember it, I used it java/C# in my past life. Does it apply to nim too? let me wikipedia it |
04:17:43 | FromDiscord | <Elegantbeef> The factory pattern is like `myObj().setX().setY().setZ()....` |
04:17:44 | FromDiscord | <Elegantbeef> It's very common in Rust apis |
04:18:04 | FromDiscord | <Elegantbeef> It stops having stupidly large constructors and the annoying initter structs that coalesce parameters |
04:18:13 | arkanoid | too many function calls, I need for speed :P |
04:19:14 | FromDiscord | <Elegantbeef> You do a bunch of proc calls then finally do `create` |
04:19:29 | FromDiscord | <Elegantbeef> Procedure calls don't add overhead if they're small |
04:19:33 | FromDiscord | <Elegantbeef> So... yea |
04:20:13 | arkanoid | do you mean that they are inlined? |
04:21:20 | arkanoid | btw yeah that's the builder pattern |
04:27:30 | arkanoid | my monster constructor actually doesn't work |
04:28:27 | FromDiscord | <Robyn [She/Her]> Isn't `std/with` also a think which is like, a macro for chaining function calls? |
04:28:57 | FromDiscord | <Robyn [She/Her]> https://nim-lang.org/docs/with.html |
04:29:43 | FromDiscord | <Elegantbeef> Atleast the likely would be |
04:30:14 | FromDiscord | <Robyn [She/Her]> https://github.com/khchen/chain there is this too but probably a bit extra for your usecase |
04:43:53 | arkanoid | it works! it works! |
05:04:34 | FromDiscord | <Elegantbeef> "it"? |
05:10:00 | * | rockcavera quit (Remote host closed the connection) |
05:11:58 | FromDiscord | <Robyn [She/Her]> In reply to @chronos.vitaqua "https://github.com/khchen/chain there is this": This does look really nice to be honest |
06:27:55 | * | ntat joined #nim |
07:13:16 | FromDiscord | <Robyn [She/Her]> What if: `set variable to Data as Type` |
07:13:22 | FromDiscord | <Robyn [She/Her]> (edit) "Data" => "data" |
07:13:42 | FromDiscord | <Robyn [She/Her]> `set str to "Hello, World!" as string` |
07:14:35 | FromDiscord | <Robyn [She/Her]> I wonder how well this would actually work in Nim without macro hell |
07:14:44 | FromDiscord | <Robyn [She/Her]> Probably not too hard, just tedious |
07:24:08 | * | advesperacit joined #nim |
07:41:39 | FromDiscord | <vxyckko65> Hey everyone, I'm new here and I wanted to try out the Nim programming language. However, I'm having trouble downloading it. The file seems to contain a virus. 😢 |
07:43:09 | FromDiscord | <Elegantbeef> It's a false positive if you believe that |
07:43:49 | FromDiscord | <vxyckko65> After trying to turn off my antivirus and turning it back on, the system still automatically deletes the nim. |
07:44:00 | FromDiscord | <vxyckko65> In reply to @Elegantbeef "It's a false positive": What do you mean? |
07:44:29 | FromDiscord | <Elegantbeef> It's not a virus |
07:45:34 | FromDiscord | <vxyckko65> Just a bug? |
07:45:45 | FromDiscord | <Elegantbeef> No just anti-virus is awful tech |
07:46:44 | FromDiscord | <vxyckko65> In reply to @Elegantbeef "No just anti-virus is": Ohh okay, so basically this happening is normal |
07:47:03 | FromDiscord | <vxyckko65> (edit) "normal" => "normal?" |
07:48:49 | FromDiscord | <Elegantbeef> Yes |
08:11:45 | FromDiscord | <ambient3332> sent a code paste, see https://play.nim-lang.org/#pasty=NVLdOlPqtHfY |
08:11:58 | FromDiscord | <ambient3332> I'm bad at names, and the "run" or "render" seems redundant |
08:13:49 | FromDiscord | <ambient3332> Does it make things more complex or simple? |
08:19:03 | FromDiscord | <ambient3332> sent a code paste, see https://play.nim-lang.org/#pasty=BKLvpCseiRar |
08:19:25 | FromDiscord | <ambient3332> Define array length inside an object at compile time |
08:23:31 | FromDiscord | <odexine> In reply to @ambient3332 "Also is there a": Theoretically that should work as is but IIRC right now you have to specify that U is a static int |
08:27:08 | FromDiscord | <ambient3332> sent a code paste, see https://play.nim-lang.org/#pasty=UbQmdkdrskSk |
10:01:58 | FromDiscord | <Phil> sent a long message, see https://pasty.ee/fwBdajfieFpf |
10:07:02 | * | ntat quit (Quit: Leaving) |
11:52:39 | FromDiscord | <enthus1ast.> I've hacked something (while procrastinating) ↵https://nimforum.code0.xyz/ |
11:53:56 | FromDiscord | <the_real_hypno> sent a code paste, see https://play.nim-lang.org/#pasty=jPjHAOweXdCv |
11:54:07 | FromDiscord | <the_real_hypno> (edit) "https://play.nim-lang.org/#pasty=WFjqQfccjdVt" => "https://play.nim-lang.org/#pasty=HZsKrKTQTzJQ" |
11:54:24 | FromDiscord | <enthus1ast.> i guess its int |
11:54:32 | FromDiscord | <the_real_hypno> yes , thats the issue 😄 |
11:54:57 | FromDiscord | <the_real_hypno> why do i define constants if they dont get mapped, there must be some really basic info im missinbg |
11:54:59 | FromDiscord | <the_real_hypno> (edit) "missinbg" => "missing" |
11:56:04 | FromDiscord | <enthus1ast.> what do you mean by mapped? |
11:56:44 | FromDiscord | <the_real_hypno> That the "native" winim exported object returns the above instead of the integer behind it |
11:57:07 | FromDiscord | <the_real_hypno> sent a code paste, see https://play.nim-lang.org/#pasty=bvLaiBxhIAaR |
11:57:16 | FromDiscord | <the_real_hypno> (edit) "https://play.nim-lang.org/#pasty=HdavLqUkHQRj" => "https://play.nim-lang.org/#pasty=KCCfOVmCoHov" |
11:57:27 | FromDiscord | <the_real_hypno> ((BaseAddress: ..., AllocationBase: ..., AllocationProtect: 128, RegionSize: 409↵6, State: 4096, Protect: 128, Type: 16777216), 128, 64) |
11:57:46 | FromDiscord | <the_real_hypno> but i dont want the numbers, i want the constatns |
11:57:49 | FromDiscord | <the_real_hypno> (edit) "constatns" => "constants" |
11:58:22 | FromDiscord | <enthus1ast.> i guess you could define an enum with those values |
11:58:39 | FromDiscord | <the_real_hypno> and then a converter? |
11:58:52 | FromDiscord | <the_real_hypno> or how would that work then |
12:02:21 | FromDiscord | <enthus1ast.> sent a code paste, see https://play.nim-lang.org/#pasty=fkhEQujhXiRH |
12:03:27 | FromDiscord | <enthus1ast.> i could imagine that you'll run into problems with the winapi and enums, but thats just a gut feeling |
12:04:48 | FromDiscord | <the_real_hypno> i have it already, cheers |
12:04:54 | FromDiscord | <the_real_hypno> enum was a good ide |
12:04:55 | FromDiscord | <the_real_hypno> (edit) "cheers" => "cheersa" |
12:04:58 | FromDiscord | <the_real_hypno> (edit) "cheersa" => "cheers" |
12:05:03 | FromDiscord | <the_real_hypno> (edit) "ide" => "idea" |
12:05:27 | FromDiscord | <the_real_hypno> sent a long message, see https://pasty.ee/KClehAMABnfM |
12:05:39 | FromDiscord | <the_real_hypno> (edit) "long message," => "code paste," | "https://pasty.ee/jeKolgLDfxiz" => "https://play.nim-lang.org/#pasty=UOTobmgXpwBe" |
12:06:05 | FromDiscord | <the_real_hypno> (edit) "https://play.nim-lang.org/#pasty=LASuJCYBLqEM" => "https://play.nim-lang.org/#pasty=FwPOvygRAfiq" |
12:06:19 | FromDiscord | <the_real_hypno> ((BaseAddress: ..., AllocationBase: ..., AllocationProtect: 128, RegionSize: 409↵6, State: 4096, Protect: PAGE_EXECUTE_WRITECOPY, Type: 16777216), 128, 64) |
13:37:21 | FromDiscord | <myxi> what code formatter do you guys use? I tried `nimfmt` but it doesn't build, then i tried `nph`but it's too strict, it won't let me configure anything at all, i can't code with this 2-level indent |
13:42:45 | FromDiscord | <myxi> found nimpretty, then ended up setting a `alias nimpretty="nimpretty --indent:4"` |
13:57:49 | FromDiscord | <Phil> I'll be moving to nph once I get back into coding |
13:57:57 | FromDiscord | <Phil> I can live with 2 level indent |
14:30:36 | FromDiscord | <myxi> tbh nph is probably more advanced than nimpretty, so i might try checking out their source code to find the secret constant that sets indent level |
14:31:07 | FromDiscord | <myxi> surely the maintainer isn't committed zero-configuration mission so much to live with obfuscated code |
14:31:16 | FromDiscord | <myxi> (edit) "surely the maintainer isn't committed ... zero-configuration" added "to this" |
14:31:22 | FromDiscord | <myxi> (edit) "surely the maintainer isn't committed to this zero-configuration mission so much ... to" added "as" |
14:34:20 | FromDiscord | <myxi> https://github.com/arnetheduck/nph/blob/master/src/phrenderer.nim#L27-L28↵found it, huahuahua |
14:34:24 | FromDiscord | <myxi> (edit) "huahuahua" => "hahaha" |
14:47:39 | FromDiscord | <Ethin> Hey guys, I'm new to Nim but am enjoying my jojurney so far! I have a question though\: what is the best way of calling functions that take (in C) a `wchar_t` or `wchar_t`? Can you just pass `WideCString`s to those functions and it'll just work (i.e., if you load a symbol using `std/dynlib`)? |
14:48:39 | FromDiscord | <Ethin> Hey guys, I'm new to Nim but am enjoying my journey so far! I have a question though\: what is the best way of calling functions that take (in C) a `wchar_t` or `wchar_t`? Can you just pass `WideCString`s to those functions and it'll just work (i.e., if you load a symbol using `std/dynlib`)? |
14:57:07 | FromDiscord | <enthus1ast.> In reply to @Ethin "Hey guys, I'm new": have a look at https://khchen.github.io/winim/winstr.html |
14:57:18 | FromDiscord | <demotomohiro> In general, when you pass an address to Nim variable to C function, if it works or not depends on what C functions do.↵If you pass an an address to local or ref variable to a C function and it holds the address after the function and access the address after that local/ref variable is freed, it become use after free. |
14:57:18 | FromDiscord | <enthus1ast.> that helped me |
15:03:39 | FromDiscord | <Ethin> I literally just found winim lol. Though the things I'm trying to access, at least on the Windows side, do expose COM interfaces. But I only know their GUIDs. But there's already a library that interfaces with all of them so that's why I was asking -- I thought I might as well just load that library instead of making a custom COM wrapper around them, particularly since I don't know how I would do that with someting like `CreateObject` |
15:10:41 | FromDiscord | <myxi> sent a code paste, see https://play.nim-lang.org/#pasty=KGwZiqxXRAeL |
15:10:54 | FromDiscord | <myxi> hmm one sec |
15:11:12 | FromDiscord | <myxi> fixed it |
15:11:24 | FromDiscord | <myxi> (edit) "it" => "it, just removed the return type" |
15:21:41 | * | ntat joined #nim |
15:28:18 | * | PMunch joined #nim |
15:33:12 | FromDiscord | <myxi> sent a code paste, see https://play.nim-lang.org/#pasty=mKIKFIHYIJMf |
15:33:23 | FromDiscord | <myxi> (edit) "https://play.nim-lang.org/#pasty=GdvlwljLViLX" => "https://play.nim-lang.org/#pasty=bFANYTTXkPFL" |
15:56:42 | arkanoid | "nim r foo.nim" compiles with C and runs. How to do the same with cpp? |
15:57:48 | Amun-Ra | -b=cpp |
15:59:50 | arkanoid | mh, doesn't work |
16:00:00 | arkanoid | syncio.nim:176:47: error: jump to label ‘LA6_’ |
16:00:49 | arkanoid | "nim cpp --run foo.nim" works "nim -b:cpp r foo.nim" gives compile error on std/syncio.nim |
16:00:55 | arkanoid | weird |
16:01:04 | Amun-Ra | what about -b:cpp? |
16:01:20 | Amun-Ra | I mean : and = work both on Linux |
16:01:27 | Amun-Ra | dunno aut windows |
16:01:35 | arkanoid | sorry I mistype, I mean -b=cpp as you suggested |
16:02:42 | arkanoid | even more strage ... -b:cpp and -b=cpp returns different compile time error |
16:02:50 | arkanoid | but nim cpp foo.nim works |
16:03:15 | Amun-Ra | hmm, nim cpp -r behaves exactly like nim r -b=cpp in my case |
16:03:43 | Amun-Ra | increase verbosity and try to find the difference |
16:04:40 | arkanoid | mh, it's the order of the arguments |
16:05:39 | arkanoid | "nim r -b=cpp foo.nim" works for me too, but "nim -b=cpp r foo.nim" doesn't |
16:06:01 | Amun-Ra | ah, right |
16:06:25 | Amun-Ra | the options must follow the command |
16:07:23 | Amun-Ra | tho, the error should be clear in the other case |
16:08:53 | arkanoid | I think so |
16:08:59 | arkanoid | thanks for helping me out! |
16:09:25 | Amun-Ra | no worries :) |
16:15:17 | NimEventer | New thread by enthus1ast: Forum mirror, see https://forum.nim-lang.org/t/11231 |
16:33:05 | * | rockcavera joined #nim |
16:36:02 | FromDiscord | <Ethin> Question\: does `std/dynload` use the linker path on Linux? I.e., can I just specif `libxxx.so` and it'll load it without me needing to specify exact paths? |
16:42:16 | FromDiscord | <Ethin> Question\: does `std/dynlib` use the linker path on Linux? I.e., can I just specif `libxxx.so` and it'll load it without me needing to specify exact paths? |
16:44:03 | FromDiscord | <Ethin> Nvm, it just uses dlopen so |
16:51:47 | arkanoid | is there a better way to exclude sequences than [T: not openarray] ? |
16:56:49 | Amun-Ra | type FooExcludes = int or float; [T: not FooExcludes]? |
16:57:28 | Amun-Ra | ah, I misread the question |
17:05:07 | * | krux02 joined #nim |
17:15:14 | FromDiscord | <penguinite> How would I go on debugging an illegal storage access bug? I am currently having an issue with db_postgres's getAllRows, and I tried removing a call to newSeqOfCap, which surprisingly did nothing. But I am sorta lost as to what's wrong with it. |
17:16:13 | FromDiscord | <Ethin> How do you tell nim on windows to build with MSVC? I'm using nimble so I'm uncertain how to tell it what compiler to use |
17:16:28 | FromDiscord | <nnsee> In reply to @pengwyns "How would I go": post your code? |
17:16:56 | FromDiscord | <penguinite> Sure, should I use a paste service? Like, nim's playground? |
17:17:05 | FromDiscord | <nnsee> i like `treeform/print` for debugging things, it prints all of the relevant information i need |
17:17:21 | FromDiscord | <nnsee> or `treeform/pretty` |
17:17:40 | FromDiscord | <nnsee> In reply to @pengwyns "Sure, should I use": yup, just use the playground's `share on pasty.ee` button |
17:17:56 | FromDiscord | <nnsee> (fun fact, that's my service :D) |
17:20:13 | Amun-Ra | Ethin: nim c --cc=vcc […] |
17:22:40 | * | PMunch quit (Quit: leaving) |
17:23:11 | FromDiscord | <Ethin> How would I do that through nimble? |
17:24:28 | FromDiscord | <penguinite> Here is the paste https://play.nim-lang.org/#pasty=xOBmHXxDcFxM (Also, nice service!) |
17:25:51 | FromDiscord | <Ethin> Oh, nvm, figured it out |
17:26:07 | Amun-Ra | you can set it in nim.cfg or config.nims |
17:26:48 | FromDiscord | <nnsee> In reply to @pengwyns "Here is the paste": hmm. are you sure that the DbConn is connected and not nil? also, you're sure that `row` is not nil before trying to access it via index? |
17:30:58 | FromDiscord | <kiloneie> what is gensym436 ? |
17:31:28 | Amun-Ra | a generated symbol #436 |
17:34:16 | FromDiscord | <penguinite> In reply to @nnsee "hmm. are you sure": I think I might've found the problem then. |
17:34:46 | FromDiscord | <penguinite> My database is probably not being connected properly. I'll go see where that leads |
17:34:51 | FromDiscord | <penguinite> Thank you! |
17:36:10 | Amun-Ra | "illegal storage access" is almost 100% caused by reading from nil |
17:36:57 | FromDiscord | <Ethin> Have you guys even worked with the CLR/windows runtime with winim? |
17:37:04 | FromDiscord | <Ethin> Have you guys ever worked with the CLR/windows runtime with winim? |
17:41:28 | FromDiscord | <myxi> sent a code paste, see https://play.nim-lang.org/#pasty=shEWEiikxujF |
17:41:55 | FromDiscord | <Robyn [She/Her]> In reply to @nnsee "yup, just use the": Oh yeah, playground doesn't have a 'view raw' button which would be useful :P |
17:42:16 | FromDiscord | <myxi> (edit) "https://play.nim-lang.org/#pasty=PsagQSWgjzDC" => "https://play.nim-lang.org/#pasty=UxsPVKkiEkGc" |
17:43:49 | * | TC__ joined #nim |
17:45:03 | FromDiscord | <nnsee> In reply to @chronos.vitaqua "Oh yeah, playground doesn't": quick _view raw_ would be just to replace the url with `pasty.ee/` up to the code |
17:45:24 | FromDiscord | <Robyn [She/Her]> I know, but buttons ;-; |
17:45:33 | FromDiscord | <Robyn [She/Her]> I should probably actually look to see if I can implement that myself |
17:45:39 | FromDiscord | <Robyn [She/Her]> But I am lazy lol |
17:45:52 | FromDiscord | <Robyn [She/Her]> In reply to @chronos.vitaqua "I know, but buttons": Convenience and all that jazz |
17:45:56 | FromDiscord | <nnsee> well I've been working on some improvements for the playground, might throw that in the mix |
17:46:03 | * | tc424 quit (Ping timeout: 255 seconds) |
17:46:03 | FromDiscord | <nnsee> unless you want to do it yourself |
17:46:20 | FromDiscord | <Robyn [She/Her]> In reply to @nnsee "well I've been working": Oh? That seems cool |
17:46:49 | FromDiscord | <Robyn [She/Her]> In reply to @nnsee "unless you want to": Ehh, if you're already modifying it and it's not too much to ask, then I'll let you do it aha |
17:47:13 | FromDiscord | <nnsee> god knows when I'll actually get around to it lol |
17:50:56 | * | krux02 quit (Quit: Leaving) |
18:03:39 | FromDiscord | <myxi> sent a code paste, see https://play.nim-lang.org/#pasty=qJafqMkxsmcw |
18:29:36 | * | ntat quit (Quit: Leaving) |
18:39:32 | * | lucasta joined #nim |
18:57:25 | FromDiscord | <kiloneie> how do you get rid of `gensym436 ? Autocomplete keeps wanting to add that to var name in a template |
18:58:42 | FromDiscord | <myxi> sent a code paste, see https://play.nim-lang.org/#pasty=lmRORxRjTjCT |
18:58:48 | FromDiscord | <myxi> `/\W(?<word>\w)\W?(?:\[?\W?(?<code>\w)\W?\])?/gm` |
19:00:45 | FromDiscord | <myxi> (edit) "`/\W(?<word>\w)\W?(?:\[?\W?(?<code>\w)\W?\])?/gm`" => "sent a code paste, see https://play.nim-lang.org/#pasty=vLDMyjHvzafl" |
19:02:51 | FromDiscord | <myxi> sent a code paste, see https://play.nim-lang.org/#pasty=OJckacQpoDOc |
19:12:22 | FromDiscord | <kralya> https://t.afdgo.pro/I96PM3 |
19:22:48 | * | lucasta quit (Quit: Leaving) |
19:32:10 | arkanoid | mh, I just found a compilator SIGSEGV, nim 2.0.2 |
19:47:56 | FromDiscord | <Robyn [She/Her]> In reply to @nnsee "god knows when I'll": Fair enough xD |
19:48:19 | FromDiscord | <Robyn [She/Her]> In reply to @kralya "https://t.afdgo.pro/I96PM3": <@&371760044473319454> |
19:53:28 | arkanoid | do you know if there's a builtin typeclass for "not (SomeFloat | tuple | object)" |
20:11:25 | * | adium quit (Quit: Stable ZNC by #bnc4you) |
20:12:15 | FromDiscord | <Robyn [She/Her]> In reply to @arkanoid "do you know if": Why would that be a typeclass? It's oddly specific :P |
20:12:22 | FromDiscord | <Robyn [She/Her]> Unless you mean `SomeInteger` |
20:12:32 | FromDiscord | <Robyn [She/Her]> But that excludes strings |
20:14:44 | arkanoid | everything that is not an object, a tuple or a float |
20:18:42 | FromDiscord | <Robyn [She/Her]> In reply to @arkanoid "do you know if": Does this not work? |
20:20:01 | FromDiscord | <ieltan> Anyone know some comprehensive ressources to implement a hashtable with open addressing? |
20:32:26 | * | adium joined #nim |
20:34:09 | * | def- quit (Quit: -) |
20:34:32 | FromDiscord | <Robyn [She/Her]> sent a code paste, see https://play.nim-lang.org/#pasty=PulWHGbaGlxk |
20:34:44 | FromDiscord | <Robyn [She/Her]> Am I misunderstanding something abut how generics work? |
20:40:45 | NimEventer | New thread by mantielero: Tesseract and Leptonica, see https://forum.nim-lang.org/t/11232 |
20:50:17 | FromDiscord | <myxi> did anybody manage to bring hypen-case to nim without `\`` around the name? I heard a few langs outside lisps do it by forcing spaces around operators |
20:50:29 | FromDiscord | <myxi> (edit) "`\``" => "\`" |
20:52:37 | FromDiscord | <Robyn [She/Her]> Hypphen case? That sounds dreadful :P |
20:52:43 | FromDiscord | <Robyn [She/Her]> But don't think anyone has |
20:52:53 | FromDiscord | <Robyn [She/Her]> I mean... |
20:53:22 | FromDiscord | <Robyn [She/Her]> Could probably do 3 separate procedures which run a function when used together but that's hacky and would provide poor autocomplete |
20:53:45 | * | def- joined #nim |
22:49:22 | FromDiscord | <Robyn [She/Her]> I am procrastinating on using Nim sys :P |
22:51:28 | NimEventer | New thread by scippie: How to preallocate cstring for FFI call that fills it up, see https://forum.nim-lang.org/t/11233 |
22:53:52 | * | advesperacit quit () |
23:03:22 | FromDiscord | <Elegantbeef> Phil (he/him) it is an anti pattern outside of the linear type stuffs cause you always give up ownership so the statement is discardable. There is no benefit in the api to force handling of a value |
23:04:21 | FromDiscord | <Elegantbeef> The entire point of the API is that of single owner ownership so by that very nature all `sink T` are consumer and having an implicit discard only makes expressions confusing |
23:07:01 | FromDiscord | <Elegantbeef> At least that's how I see it all operations on a "linear type" are transformations, if you want to continue mutating the object you should grab the value otherwise why force the programmer to dance when the compiler knows |
23:53:22 | arkanoid | from time to time my compilations starts to fail with weird errors like: malebolgia.nim:33:9: error: use of deleted function ‘tyObject_Master__F3e20AfgTBHcMGUUxuJL1g::tyObject_Master__F3e20AfgTBHcMGUUxuJL1g(const tyObject_Master__F3e20AfgTBHcMGUUxuJL1g&)’ |
23:53:28 | arkanoid | it seems like a caching issue to me |