00:00:05 | * | arkurious quit (*.net *.split) |
00:00:06 | * | LyndsySimon quit (*.net *.split) |
00:00:06 | * | wallabra quit (*.net *.split) |
00:00:06 | * | genpaku quit (*.net *.split) |
00:00:07 | * | void09 quit (*.net *.split) |
00:00:07 | * | Jjp137 quit (*.net *.split) |
00:00:22 | * | Jjp137 joined #nim |
00:00:26 | * | LyndsySimon joined #nim |
00:00:51 | * | genpaku joined #nim |
00:02:11 | * | arkurious joined #nim |
00:02:40 | * | void09 joined #nim |
00:02:49 | * | wallabra joined #nim |
00:02:55 | * | wallabra quit (Changing host) |
00:02:55 | * | wallabra joined #nim |
00:35:36 | FromDiscord | <Tuatarian> does `writeFile` overwrite the contents o fthe file? |
00:38:37 | FromDiscord | <Elegantbeef> things that can be tested for 4000 alex |
00:38:42 | FromDiscord | <Elegantbeef> 400\ |
00:41:45 | FromDiscord | <Tuatarian> it's annoying since I can't do this on the nim playground |
00:41:52 | FromDiscord | <Tuatarian> but thanks for the help |
00:42:59 | FromDiscord | <Tuatarian> I was definitely completely unaware of the fact that I could check this, and definitely wasn't asking here to save some time incase anybody else knew |
00:43:00 | FromDiscord | <Elegantbeef> `cd /tmp && echo "writeFile("test", "hmm"); writeFile("test", "huh"); echo readFile("test") >> test.nim && nim c -r ./test.nim` 😛 |
00:49:46 | FromDiscord | <Elegantbeef> Or you can do `nim r --eval:'writeFile("test.file", "hello");writeFile("test.file", "hmm"); echo readFile("test.file")'` |
00:57:15 | * | derpydoo quit (Ping timeout: 268 seconds) |
01:57:41 | FromDiscord | <Elegantbeef> You're making an array of `10000000` and instantly overlfowing the stack |
01:57:52 | FromDiscord | <Elegantbeef> overflowing\ |
01:57:53 | FromDiscord | <Elegantbeef> change that to `newSeq[bool](n)` |
01:58:36 | FromDiscord | <Elegantbeef> If you want it to be stack allocated look up how to increase the stack size with C and use `--passC` or `--passL` to grow it |
02:17:32 | * | arkurious quit (Quit: Leaving) |
02:21:11 | FromDiscord | <SaAnd> also `countup` exists so you can for loop but jump by more than 1 |
02:22:30 | FromDiscord | <SaAnd> https://nim-lang.org/docs/system.html#countup.i%2CT%2CT%2CPositive |
02:50:55 | * | wallabra_ joined #nim |
02:52:08 | * | wallabra quit (Ping timeout: 244 seconds) |
02:52:49 | * | wallabra_ is now known as wallabra |
03:11:58 | FromDiscord | <Freakwill (William Song)> thanks a lot |
03:12:13 | FromDiscord | <SaAnd> welcome |
03:33:20 | FromDiscord | <Bung> sent a code paste, see https://play.nim-lang.org/#ix=48sX |
03:33:47 | FromDiscord | <Bung> (edit) "https://play.nim-lang.org/#ix=48sX" => "https://play.nim-lang.org/#ix=48sZ" |
03:34:35 | FromDiscord | <Elegantbeef> Yea that's a object variant in Nim |
03:35:03 | FromDiscord | <Bung> okay, thanks! |
03:35:37 | FromDiscord | <Elegantbeef> Actually no that's not a variant |
03:35:40 | FromDiscord | <Elegantbeef> It's a union |
03:47:40 | FromDiscord | <Sabena Sema> yeah there's a pragma to say something is a union, unfortunately there's no direct way to emulate unnamed structs/unions |
03:47:56 | FromDiscord | <Elegantbeef> Some say unfortunately i say fortunately |
03:49:26 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=48t7 |
03:50:57 | FromDiscord | <Elegantbeef> Atleast if you're not including the source the above should work |
03:52:05 | FromDiscord | <Rika> Minor is strangely before major by the way |
03:52:25 | FromDiscord | <Rika> Actually no maybe not very strangely |
03:53:18 | FromDiscord | <Bung> In reply to @Elegantbeef "Now that i read": where's ` UINT64 Version;` and I never seen `array[SomeEnumType, uint16]` |
03:53:35 | FromDiscord | <Elegantbeef> It's a union the data is overlayed |
03:54:06 | FromDiscord | <Elegantbeef> As such you only need that uint64 if you want a uint64, otherwise you can just convert between the two with a cast |
03:54:12 | FromDiscord | <Bung> sent a code paste, see https://play.nim-lang.org/#ix=48ta |
03:54:15 | FromDiscord | <Rika> No |
03:54:15 | FromDiscord | <Elegantbeef> No Unions overlap data |
03:54:17 | FromDiscord | <Rika> That’s different |
03:55:50 | FromDiscord | <Elegantbeef> I guess a normal object works aswell |
03:56:55 | FromDiscord | <Bung> sent a code paste, see https://play.nim-lang.org/#ix=48tb |
03:57:14 | FromDiscord | <Elegantbeef> Assuming `static: assert sizeof(PackageVersion) == 4` |
03:57:21 | FromDiscord | <Rika> Not sure why you have the pure pragma but yeah |
03:57:43 | FromDiscord | <Elegantbeef> `== 8`\ |
03:58:11 | FromDiscord | <Elegantbeef> You also should be able to just use Nim's uint16 |
03:58:16 | FromDiscord | <Elegantbeef> Might be wrong there |
03:59:07 | FromDiscord | <Bung> In reply to @Rika "Not sure why you": it used for dll proc |
03:59:18 | FromDiscord | <Elegantbeef> That doesnt change anything |
03:59:27 | FromDiscord | <Elegantbeef> Pure is for saying "Dont include type information" |
03:59:37 | FromDiscord | <Elegantbeef> `= object` doesnt have type information |
04:00:15 | FromDiscord | <Bung> so when use pure pragma ? https://nim-lang.org/docs/manual.html#pragmas-pure-pragma |
04:00:45 | FromDiscord | <Bung> I just ensure there's no unexpected data for the type |
04:01:08 | FromDiscord | <Rika> Okay |
04:01:13 | FromDiscord | <Bung> winim lib use pure a lot |
04:01:15 | FromDiscord | <Rika> Leaving it in shouldn’t hurt |
04:02:01 | FromDiscord | <Elegantbeef> It doesnt hurt, cause it doesnt work 😄 |
04:02:24 | FromDiscord | <Bung> maybe the behavior will change to "pure is needed " someday ? |
04:03:16 | FromDiscord | <Bung> anyway leave it as is |
04:04:06 | FromDiscord | <Elegantbeef> It wont change to that, but yea |
04:04:13 | FromDiscord | <Rika> In reply to @Bung "maybe the behavior will": It was changed from needed to unnecessary though |
05:21:35 | FromDiscord | <SaAnd> how do you attach a config file to a library and force downstream users to use it? |
05:22:11 | FromDiscord | <SaAnd> i just dont want to always attack a config of my own to link to the correct things |
05:22:18 | FromDiscord | <SaAnd> \attach |
05:36:31 | FromDiscord | <Girvo> Any ideas? |
05:36:35 | FromDiscord | <Girvo> sent a code paste, see https://play.nim-lang.org/#ix=48tr |
05:38:53 | FromDiscord | <Elegantbeef> Does the user have permission to write in the home folder? |
05:38:57 | FromDiscord | <Elegantbeef> Dumb question but yea |
05:41:34 | FromDiscord | <Girvo> Yeah it does haha |
05:41:43 | FromDiscord | <Ras> try `wget https://nim-lang.org/choosenim/init.sh -O /tmp/choosenim.sh` |
05:41:44 | FromDiscord | <Girvo> I just installed it manually for now, but its a bit odd |
05:41:57 | FromDiscord | <Ras> and then `sh /tmp/choosenim.sh` |
05:42:05 | FromDiscord | <Girvo> @Ras Okay I'll give it a try |
05:42:34 | FromDiscord | <Ras> sometimes when piping and sh fails to execute for whatever reason, the piping program spits out an error instead |
05:42:39 | FromDiscord | <Ras> which can be misleading |
05:44:16 | FromDiscord | <Girvo> Yeah I think it's something to do with Amazon Linux being a bit more locked down with some of this now. It reads to me like a permissions error when trying to execute the file that doesn't exist or something similar. Weird as. |
05:51:31 | * | xcodz-dot joined #nim |
05:54:43 | madprops | what's the proper way to find with a regex from any user provided filter? https://play.nim-lang.org/#ix=48tu |
05:56:40 | FromDiscord | <Elegantbeef> Are you trying to implement globs? |
05:56:51 | madprops | hmm |
05:56:51 | FromDiscord | <Prestige> https://play.nim-lang.org/#ix=48tv |
05:57:46 | madprops | which package provides globs? |
05:58:01 | madprops | https://nim-lang.org/docs/globs.html |
05:58:21 | FromDiscord | <Elegantbeef> `walkDir` or `walkDirRec` does support basic globs |
05:58:32 | FromDiscord | <Elegantbeef> It does say that on one of them |
05:58:39 | madprops | that would work |
06:00:57 | madprops | i was using walkDirRec(conf().path ... |
06:01:24 | madprops | to establish the root path |
06:01:35 | FromDiscord | <SaAnd> am i missing something? |
06:01:56 | madprops | nah. nvm i'll leave it as is |
06:02:02 | FromDiscord | <Elegantbeef> Configs are not considered with Nimble |
06:02:07 | FromDiscord | <Elegantbeef> So the answer is you cannot sadly |
06:02:29 | madprops | i didn't get that |
06:02:34 | madprops | conf() is my own function |
06:03:24 | madprops | but nvm |
06:03:28 | madprops | thanks |
06:06:29 | FromDiscord | <Elegantbeef> It was response to saand |
06:06:29 | FromDiscord | <Elegantbeef> Irc didnt get the message they were responding to |
06:11:51 | madprops | ah |
06:33:48 | * | h00k_ joined #nim |
06:38:57 | * | h00k_ quit (Quit: Konversation terminated!) |
06:39:17 | * | h00k_ joined #nim |
06:39:37 | * | PMunch joined #nim |
06:43:49 | * | h00k_ quit (Client Quit) |
07:11:18 | * | fredrikhr joined #nim |
07:20:23 | * | xcodz-dot left #nim (Leaving) |
07:25:08 | FromDiscord | <Prestige> How do I create a proc inside a macro with a unique name? |
07:26:25 | FromDiscord | <Elegantbeef> gensym |
07:26:37 | FromDiscord | <Prestige> sent a code paste, see https://play.nim-lang.org/#ix=48tO |
07:26:45 | FromDiscord | <Prestige> because then I have `name` which isn't unique |
07:27:09 | FromDiscord | <Prestige> and if I try to inline genSym in the proc decl, it doesn't compile |
07:28:11 | FromDiscord | <Elegantbeef> Are we talking about unique in the compiler or to the user? |
07:28:43 | FromDiscord | <Prestige> compiler |
07:28:53 | FromDiscord | <Elegantbeef> Then the above should work |
07:29:05 | FromDiscord | <flywind> Seems to be a known bug => https://github.com/nim-lang/Nim/issues/13973 |
07:29:37 | FromDiscord | <Elegantbeef> You can also just annotate `{.gensym.}` on the prock |
07:29:52 | FromDiscord | <Prestige> I get `Error: redefinition of 'name';` |
07:29:55 | FromDiscord | <Prestige> hm I'll try that |
07:30:17 | FromDiscord | <Elegantbeef> Actually that wont work, the proc will not be callable |
07:30:23 | FromDiscord | <Elegantbeef> Unless you extract the symbol after |
07:30:36 | FromDiscord | <Prestige> hm yeah |
07:30:58 | FromDiscord | <Prestige> Maybe there's a better way to do what I'm trying to do, if this isn't possible... |
07:34:04 | FromDiscord | <Elegantbeef> Speak and you may get your answer |
07:38:13 | FromDiscord | <4zv4l> sent a code paste, see https://play.nim-lang.org/#ix=48tU |
07:38:19 | FromDiscord | <4zv4l> like open a program but keep it in background |
07:39:39 | FromDiscord | <4zv4l> or a `getConsoleWindow` |
07:42:37 | FromDiscord | <Bung> found GetFileAttributes works path like `C:\\` , not `C:\`, while registry store path as `C:\` |
07:43:22 | * | Vladar joined #nim |
07:47:13 | FromDiscord | <4zv4l> alright I found to hide the window |
07:47:16 | FromDiscord | <4zv4l> but `Error: undeclared identifier: 'kbhit` |
07:47:20 | FromDiscord | <4zv4l> (edit) "'kbhit`" => "'kbhit'`" |
07:48:27 | FromDiscord | <4zv4l> oooh it's from conio my bad |
07:58:23 | FromDiscord | <planetis> sent a code paste, see https://play.nim-lang.org/#ix=48tX |
07:58:59 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=48tY |
07:59:16 | FromDiscord | <planetis> really?! omg thanks beef |
07:59:36 | FromDiscord | <Elegantbeef> Nim sadly sees "object" and goes 'yep it's an object declaration not a typeclass' |
07:59:46 | FromDiscord | <Elegantbeef> It's the same for any of the other declaration blocks |
07:59:52 | FromDiscord | <Elegantbeef> So enum and tuple |
08:01:05 | FromDiscord | <planetis> So that's why this didn't work https://github.com/nim-lang/threading/issues/17 |
08:01:09 | FromDiscord | <planetis> bc of distinct |
08:01:47 | FromDiscord | <Elegantbeef> No clue i cannot parse what the bug is |
08:01:57 | FromDiscord | <Elegantbeef> I'll take your word for it |
08:02:42 | FromDiscord | <planetis> Couldn't do Atomic[distinct pointer] |
08:03:02 | FromDiscord | <Elegantbeef> Uhhh hmph |
08:03:45 | FromDiscord | <Elegantbeef> pointer is a typeclass... so distinct pointer should just mean "accepts any pointer" |
08:04:29 | FromDiscord | <Elegantbeef> Nevermind all pointer types convert implicitly regardless of typeclass logic |
08:04:51 | FromDiscord | <Elegantbeef> Anyway the way to do that is to use a concept |
08:05:41 | FromDiscord | <planetis> you have a point there |
08:05:48 | FromDiscord | <planetis> (edit) "point" => "pointer" |
08:06:51 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=48u1 |
08:06:53 | FromDiscord | <Elegantbeef> It's quite a simple concept |
08:09:30 | FromDiscord | <Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=48u2 |
08:10:04 | FromDiscord | <Elegantbeef> That covers the entire range of types that AtomType does and any distincts you might implement |
08:10:08 | FromDiscord | <planetis> Could you add your insight in the issue? |
08:10:35 | FromDiscord | <planetis> Or I can copy paste it. |
08:10:36 | FromDiscord | <Elegantbeef> I guess |
08:11:42 | FromDiscord | <Girvo> Is it possible to use `SO_REUSEADDR` with `std/net` newSocket/etc? |
08:12:46 | FromDiscord | <Girvo> I guess I can get the `fd` and use setSockOpt from nativesockets on it? |
08:13:08 | FromDiscord | <Elegantbeef> There you go planetis |
08:13:18 | FromDiscord | <Ras> that should work @Girvo |
08:14:41 | FromDiscord | <Girvo> sent a code paste, see https://play.nim-lang.org/#ix=48u4 |
08:23:22 | FromDiscord | <elcritch> sent a code paste, see https://play.nim-lang.org/#ix=48u6 |
08:28:45 | FromDiscord | <Girvo> Ohhhh nice |
08:28:48 | FromDiscord | <Girvo> Appreciate it 😄 |
08:29:18 | FromDiscord | <Girvo> Now a question: why is `socket.close()` of a client socket being "ignored" lol. is there a way to drop a connection to the client aside from `close`? |
08:30:46 | * | rockcavera quit (Remote host closed the connection) |
08:37:28 | FromDiscord | <Bung> In reply to @Bung "found GetFileAttributes works path": nvm encoding thing |
08:46:07 | FromDiscord | <Girvo> In reply to @Girvo "Now a question: why": Turns out its because `timeout = -1` lol |
08:48:20 | FromDiscord | <Require Support> how do i debug async errors 😦 ↵I know the error happens when trying to call `await postContent(...)` from asynchttpclient.↵but error is within `asyncdispatch.nim` ↵`customOverlapped.data.fd == lpCompletionKey.AsyncFD [AssertionDefect]` |
09:02:31 | NimEventer | New thread by Drkameleon: Does "pushing" overflowCheck's actually work?, see https://forum.nim-lang.org/t/9408 |
09:42:53 | * | wallabra quit (Ping timeout: 244 seconds) |
09:55:34 | FromDiscord | <sealmove> Hello!! How are you folks? :) It's been a while since chatting here. |
09:57:42 | FromDiscord | <sealmove> I've asked the same question at least 2 times in the past, but now I have some more time to investigate: my goal is to compile Nim into a WASI-compatible wasm exe. I've found this https://forum.nim-lang.org/t/7365#46889 and I remember someone showing me a repo where he has achieved it. Cheers! |
09:58:35 | FromDiscord | <sealmove> Btw the reason I want to do this is to write web apps in Nim using the Fermyon platfrom |
09:58:40 | FromDiscord | <sealmove> (edit) "platfrom" => "platform." |
10:20:32 | FromDiscord | <Nalmyth> How can I get nim to show me more compile error history? |
10:21:10 | FromDiscord | <Nalmyth> sent a code paste, see https://play.nim-lang.org/#ix=48ut |
10:21:14 | FromDiscord | <Nalmyth> (edit) "https://play.nim-lang.org/#ix=48ut" => "https://paste.rs/Hb8" |
10:34:25 | * | jmdaemon quit (Ping timeout: 268 seconds) |
10:55:23 | FromDiscord | <sealmove> This is the weakest point of macros |
11:13:53 | FromDiscord | <hotdog> In reply to @รєคɭ๓๏שє "Btw the reason I": Sounds interesting |
11:14:02 | FromDiscord | <hotdog> What’s required for wasi compatibility? |
11:15:31 | FromDiscord | <sealmove> hey hotdog, this is what I am trying to figure out... |
11:18:13 | FromDiscord | <konsumlamm> In reply to @planetis "Wait really? I thought": ok, it seems that integer/pointer casts use the standard C casts, but i'm not sure how well defined that is either |
11:18:17 | FromDiscord | <planetis> In reply to @Nalmyth "How can I get": printStackTrace, --expandmacro: or macros.expandmacros (if it's a macro) even --expandarc: |
11:19:16 | FromDiscord | <planetis> Best if you use -d:debug |
11:21:42 | FromDiscord | <planetis> Oh compile error? Like the compiler crashed or a macro failed? |
11:26:13 | FromDiscord | <Nalmyth> In reply to @planetis "printStackTrace, --expandmacro: or macros.expandmac": Hmm I will try this, thank you! |
11:48:07 | FromDiscord | <bookerbtc> sent a long message, see http://ix.io/48uN |
11:48:10 | FromDiscord | <bookerbtc> sent a long message, see http://ix.io/48uO |
11:49:16 | FromDiscord | <Phil> <@&371760044473319454> we have scum in the chat, please ban |
11:49:24 | FromDiscord | <enthus1ast> A shame that we also need a spamfilter for matrix (and rest) now |
11:53:28 | PMunch | Thanks @Phil |
11:53:44 | FromDiscord | <RAM5501> Should I be using `let` or `var`? |
11:53:52 | PMunch | @sealmove, maybe try and get ahold of ElegantBeef, he likes WASM |
11:54:00 | PMunch | @RAM5501, depends on what you're doing |
11:54:13 | PMunch | That's like asking "should I be using ints or strings" |
11:54:37 | FromDiscord | <enthus1ast> when you can const, if not then let if not let then var↵(@RAM5501) |
11:54:39 | FromDiscord | <sealmove> yeah I found his repo, used his .nims and I can compile to a .wasm which runs with wasmtime with no errors! |
11:54:40 | PMunch | General rule of thumb though, use let as much as possible |
11:56:19 | FromDiscord | <RAM5501> Also, is rake or nake or whatever it's called still good? Or should I stick with a regular GNU makefile? |
11:57:02 | FromDiscord | <enthus1ast> why not try nimble first? |
11:57:44 | FromDiscord | <enthus1ast> nimble most nim users have and its cross platform |
11:58:05 | FromDiscord | <RAM5501> I thought nimble was just a git frontend. |
11:58:11 | FromDiscord | <enthus1ast> nah |
11:58:23 | FromDiscord | <enthus1ast> you can define tasks with nimscript |
12:00:00 | * | Guest54 joined #nim |
12:00:03 | * | def- quit (Quit: -) |
12:00:12 | FromDiscord | <enthus1ast> also, if you need to build your executable with different flags, you can create a yourApp.nims file, where you add the flags |
12:00:50 | * | Guest54 quit (Client Quit) |
12:01:23 | FromDiscord | <sealmove> @ElegantBeef hey, how're you? |
12:02:46 | PMunch | @RAM5501, not sure what gave you that impression. But nimble is the Nim package manager/build system |
12:03:25 | PMunch | You specify which packages and Nim version you depend on, and then you can use `nimble build` or `nimble run` to have Nimble grab all those packages for you and build the executable |
12:04:24 | PMunch | You can also create tasks in NimScript as @enthus1ast said, so you can script your own automatic build steps with it (although there commonly aren't too many of those, Nim by itself having compile-time evaluation and all that) |
12:08:09 | FromDiscord | <RAM5501> I spent too long on C. I see a `` in nim and I think it's a pointer. Maybe it gets compiled as a pointer, but I still think it's like a C pointer. |
12:10:49 | FromDiscord | <RAM5501> Another question: Can I have multiple versions of a nim package in one git branch? Like say in the master branch root directory, you have 1.0 and 2.0 directories. Can I do that with nimble without issue? |
12:11:37 | PMunch | @RAM5501, well that's not really how git is supposed to work |
12:11:50 | PMunch | It's a version control system, so you should use it to control your versions |
12:11:58 | FromDiscord | <RAM5501> Thanks. |
12:13:30 | PMunch | You could put a nimble package in each, and it would be possible to install them by cloning the repo locally and calling `nimble install` from that folder, but I don't think Nimble would accept that as a package structure in the repository. |
12:14:00 | PMunch | It is a fundamentally flawed way of using Git though, so you would be better off just using Git the way it's supposed to be used |
12:15:16 | FromDiscord | <RAM5501> Very well then. |
12:17:15 | FromDiscord | <aruZeta> In reply to @Isofruit "<@&371760044473319454> we have": again? |
12:20:23 | * | def- joined #nim |
12:35:51 | FromDiscord | <Rexford> ``I have been thinking about this, how we can get Skia engine to be wrapped around nim.`` |
12:36:56 | FromDiscord | <Rexford> Or can we use OpenGL directly, just some wrapper around it |
12:39:13 | FromDiscord | <hotdog> In reply to @Rexford "``I have been thinking": Haven’t seen skia bindings. Have you looked at pixie? |
12:39:27 | FromDiscord | <hotdog> In reply to @Rexford "Or can we use": There’s a few opengl wrappers |
12:39:59 | FromDiscord | <Rexford> In reply to @hotdog "Haven’t seen skia bindings.": Not, really. But can you send me a pointers for the opengl |
12:40:32 | FromDiscord | <Rexford> Like I'm concern about building a cross-platform framework ontop of nim |
12:41:36 | FromDiscord | <hotdog> In reply to @Rexford "Not, really. But can": https://github.com/nim-lang/opengl https://github.com/nimgl/opengl |
12:42:01 | FromDiscord | <hotdog> And a bunch more things in nimble : https://nimble.directory/search?query=Opengl |
12:42:12 | FromDiscord | <hotdog> In reply to @Rexford "Like I'm concern about": What kind of framework? |
12:42:54 | FromDiscord | <Rexford> Cross-platform... targeting mobile and web... Just like how Flutter works |
12:44:39 | FromDiscord | <Rexford> But taking the performance of nim into consideration. If we have a framework as such... I can presume the speed and performance will be better. More importantly, we can have better UI screens concept develop since nim has dynamic styling system |
12:44:46 | FromDiscord | <Rexford> In reply to @hotdog "And a bunch more": Thanks |
12:45:30 | FromDiscord | <hotdog> In reply to @Rexford "Cross-platform... targeting mobile and": So a UI framework? |
12:45:36 | FromDiscord | <Rexford> Yeah |
12:46:13 | FromDiscord | <hotdog> I’d also recommend having a look at fidget then - https://github.com/treeform/fidget |
12:46:16 | FromDiscord | <hotdog> Similar goals |
12:46:22 | FromDiscord | <Rexford> Okay sure, thanks |
12:51:26 | * | h00k_ joined #nim |
12:51:39 | FromDiscord | <enthus1ast> I must admit I do not fully understand figma, since the names of gui elements have no standart you cannot really use other design templates from others right? |
12:52:26 | h00k_ | Hello, best resource for lear nim? |
12:53:15 | FromDiscord | <enthus1ast> So you every time build everything from scratch again, or at least it feels so, could be that I also have no clue about modern guis |
12:57:09 | * | arkurious joined #nim |
13:14:59 | FromDiscord | <sealmove> is there a way to export a symbol which starts with `_` (for C-compatibility reasons) |
13:16:15 | FromDiscord | <Phil> In reply to @h00k_ "Hello, best resource for": In Nims main page you'll see the tutorial linked as well as Nim in 5 minutes.↵After you get a basic grasp of the syntax you can take a look at Nim for c/Python developers if you have knowledge in one of these languages |
13:16:47 | FromDiscord | <enthus1ast> use the exportc pragma↵(@sealmove) |
13:17:52 | PMunch | @Rexford, have you looked at the C bindings for Skia? You should be able to feed those to Futhark :) |
13:20:57 | FromDiscord | <sealmove> @enthus1ast erm, it's not that simple, could you assist? |
13:21:19 | FromDiscord | <sealmove> sent a code paste, see https://play.nim-lang.org/#ix=48vd |
13:21:30 | FromDiscord | <auxym> In reply to @Rexford "Cross-platform... targeting mobile and": Phil pointed me to the Rust framework tauri that does something like that. I'm not up to this, but it would be nice to get nim bindings for it. |
13:22:28 | FromDiscord | <sealmove> I must use this macro to export functions and this macro uses exportc internally. I suppose I must modify it to somehow to specify the name of the exported function (because now it uses the same as the name of the Nim proc). |
13:28:53 | FromDiscord | <auxym> In reply to @รєคɭ๓๏שє "I must use this": `var name {.exportC: "name_you_want_in_c".}: typ` |
13:31:17 | FromDiscord | <sealmove> it's not exactly exporting to c, it's exporting to wasi, and the above macro I posted worked, but the exported function has the same name as the nim proc. |
13:32:41 | FromDiscord | <auxym> yeah, you need the colon with the exported func name you want in the exportc pragma. not sure how to do it via the macro node API though |
13:34:31 | FromDiscord | <planetis> newProc.pragma = nnkPragma.newTree bindSym"exportc", newProc.name |
13:34:56 | FromDiscord | <planetis> Totally broken but something like that. |
13:35:40 | FromDiscord | <planetis> (edit) "newProc.name" => "newLit("_" & newProc.name)" |
13:36:07 | FromDiscord | <sealmove> thanks planetis, i'll try to hack together something like this |
13:42:35 | FromDiscord | <voidwalker> blah, I need an asyinc in nim for dummies article :\ |
13:42:41 | FromDiscord | <voidwalker> (edit) "asyinc" => "async" |
13:43:30 | FromDiscord | <planetis> That's a nice lib https://deser.nim.town/deser.html#how-to-make-bindings |
13:43:32 | FromDiscord | <auxym> @sealmove here's an example using `newColonExpr` |
13:44:03 | FromDiscord | <SaAnd> about futhark, thanks pmunch you saved from manually wrapping mpfr \:)↵my question is, in mpfr there are some functions that only exist if you `#include` some other libraries first, like you must `#include <stdio.h>` before including mpfr to get ahold of the function `mpfr_out_str`. Is there a nice way of doing this when using futhark? |
13:44:03 | FromDiscord | <auxym> https://github.com/auxym/nim-on-samd21/blob/master/src/startup.nim#L9 |
13:45:20 | PMunch | @SaAnd, glad you like it. About your question I'm not entirely sure. But I don't think it would be doable in Nim land unfortunately.. |
13:45:52 | PMunch | Well you might be able to trick it my defining STDIO_H or whatever, and then hiding it on the Nim side behind a `when someSmartCondition` |
13:45:55 | PMunch | Not 100% sure though |
13:45:57 | * | PMunch quit (Quit: Leaving) |
14:02:32 | FromDiscord | <voidwalker> https://www.youtube.com/watch?v=hwArqelfBBY&t=1035s - seems not even Araq understands async |
14:15:36 | * | Vladar quit (Quit: Leaving) |
14:23:27 | * | rockcavera joined #nim |
14:23:27 | * | rockcavera quit (Changing host) |
14:23:27 | * | rockcavera joined #nim |
14:24:32 | FromDiscord | <sealmove> is anyone familiar with this? https://github.com/bytecodealliance/wit-bindgen |
14:24:41 | FromDiscord | <voidwalker> hm code in the presentation does not compile anymore: |
14:24:48 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=48vA |
14:24:49 | FromDiscord | <voidwalker> any idea what's wrong with it ? |
14:24:59 | FromDiscord | <Rika> Await the bodies |
14:25:47 | FromDiscord | <voidwalker> await echo a.body ? |
14:26:58 | FromDiscord | <hotdog> probably `echo await(a.body) & await(b.body) & await(c.body)` |
14:29:20 | FromDiscord | <dom96> In reply to @voidwalker "https://www.youtube.com/watch?v=hwArqelfBBY&t=1035s": hah, good times |
14:29:52 | FromDiscord | <aruZeta> lemme remember how async works, been long since I used it when I read dom's book lol |
14:30:20 | FromDiscord | <aruZeta> talking about dom, he appeared lol |
14:30:41 | * | Vladar joined #nim |
14:33:40 | FromDiscord | <aruZeta> sent a code paste, see https://play.nim-lang.org/#ix=48vD |
14:34:03 | FromDiscord | <aruZeta> and note that you need to pass `-d:ssl` to the compiler |
14:34:14 | FromDiscord | <aruZeta> `nim c -d:ssl -r file.nim` |
14:34:36 | FromDiscord | <aruZeta> since http://nim-lang.org is served over ssl |
14:35:16 | FromDiscord | <dom96> sent a code paste, see https://play.nim-lang.org/#ix=48vE |
14:35:17 | FromDiscord | <dom96> You can just use `await` |
14:35:21 | FromDiscord | <aruZeta> i was going to comment that |
14:35:32 | FromDiscord | <aruZeta> my bad |
14:36:09 | FromDiscord | <aruZeta> (edit) "comment" => "edit" |
14:37:15 | FromDiscord | <dom96> it's easy to get these confused :) |
14:37:25 | FromDiscord | <aruZeta> and it's been too long I wrote any async lol |
14:37:29 | FromDiscord | <voidwalker> right, now please explain to me what's going on there. Or better, make me a 2d animation with the program flow : D |
14:38:12 | FromDiscord | <aruZeta> cuz I know how to make a 2d animation of a flow chart |
14:38:25 | FromDiscord | <Rika> Await will just wait for the future to complete, so it’s essentially like sync if you have nothing else running |
14:38:41 | FromDiscord | <aruZeta> take a look here https://media.discordapp.net/attachments/371759389889003532/1012008044751765504/unknown.png https://media.discordapp.net/attachments/371759389889003532/1012008045221511279/unknown.png |
14:39:04 | FromDiscord | <aruZeta> it's from dom's book, i guess it's not a problem to share it dom? |
14:39:27 | FromDiscord | <voidwalker> so await blocks the proc where it is used ? I thought it's the other way around, it lets it run |
14:39:35 | FromDiscord | <voidwalker> (edit) "run" => "continue" |
14:39:42 | FromDiscord | <dom96> In reply to @aruZeta "it's from dom's book,": Of course not :) |
14:39:48 | FromDiscord | <aruZeta> In reply to @dom96 "Of course not :)": aight |
14:39:59 | FromDiscord | <Rika> In reply to @voidwalker "so await blocks the": It lets other async procedures to continue |
14:40:12 | FromDiscord | <dom96> @voidwalker best thing to see how it works is to print out what the `async` macro generates |
14:40:36 | FromDiscord | <dom96> there should be a commented out `echo` line at the bottom of the `async` macro defintion which you can comment out to see |
14:40:42 | FromDiscord | <dom96> iirc there is a Nim flag you can pass as well |
14:40:44 | FromDiscord | <dom96> --expandMacros? |
14:40:49 | FromDiscord | <Rika> No s |
14:40:51 | FromDiscord | <Rika> Expand macro |
14:41:05 | FromDiscord | <voidwalker> yeah no, I got the essence of it, that it transforms it into an iterator bla bla.. but I don't know what await does : D |
14:41:08 | FromDiscord | <Rika> Then “:async” after that |
14:41:31 | FromDiscord | <Rika> In reply to @voidwalker "yeah no, I got": To the calling procedure, it’s just like sync |
14:41:40 | FromDiscord | <Rika> To the whole program, it’s like yielding kinda |
14:42:14 | FromDiscord | <aruZeta> (pls correct if im wrong)↵when the code reaches an await, it will run the code of the await and also run the rest of awaits after that one↵while when it reaches a waitFor, the execution of the proc will stop until the code of the waitFor is finished |
14:42:44 | FromDiscord | <Rika> What |
14:42:56 | FromDiscord | <Rika> Await is the async version of wait for |
14:43:01 | FromDiscord | <Rika> Wait for is the sync version of await |
14:43:10 | FromDiscord | <aruZeta> yh |
14:43:16 | FromDiscord | <Rika> To the calling procedures, the functionality is identical |
14:43:57 | FromDiscord | <Rika> To the global program, await yields resources to other futures that need it |
14:44:04 | FromDiscord | <dom96> `await` expands to a `yield` |
14:44:08 | FromDiscord | <Rika> No |
14:44:09 | FromDiscord | <aruZeta> sent a code paste, see https://play.nim-lang.org/#ix=48vH |
14:44:12 | FromDiscord | <Rika> That will await one by one |
14:44:23 | FromDiscord | <aruZeta> hmm |
14:44:30 | FromDiscord | <Rika> Just like how wait for will wait for one by one |
14:44:59 | FromDiscord | <mratsim> sent a code paste, see https://play.nim-lang.org/#ix=48vI |
14:45:09 | FromDiscord | <Rika> Here |
14:45:14 | FromDiscord | <mratsim> (edit) "https://play.nim-lang.org/#ix=48vI" => "https://play.nim-lang.org/#ix=48vJ" |
14:45:33 | FromDiscord | <Rika> Nvm |
14:45:38 | FromDiscord | <aruZeta> the difference was then that waitFor will run the event loop until the Future completes, while await pauses the proc |
14:45:40 | FromDiscord | <Rika> The explanation I thought of still falls flat |
14:45:50 | FromDiscord | <aruZeta> but then, what's the actual diff |
14:46:37 | FromDiscord | <Rika> You can’t have more than one future running if you only use wait for I think? |
14:46:48 | FromDiscord | <aruZeta> that waitFor can be used out of an {.async.} proc? |
14:47:08 | FromDiscord | <Rika> I’m still thinking |
14:47:08 | FromDiscord | <Rika> Oh |
14:47:10 | FromDiscord | <aruZeta> (edit) "that waitFor can be used out of an {.async.} proc? ... " added "(since it runs the event loop)" |
14:47:34 | FromDiscord | <Rika> Futures that are running longer than the future given to wait for will never complete |
14:47:48 | FromDiscord | <Rika> Since you stop calling poll after |
14:48:14 | FromDiscord | <dom96> if you call `waitFor` then your proc is no longer async, it will block running the event loop |
14:48:22 | FromDiscord | <dom96> if every async proc did this then nothing would happen concurrently |
14:49:51 | FromDiscord | <aruZeta> i get `waitFor`, since it's just blocking the event loop |
14:50:30 | FromDiscord | <hotdog> @dom96 just while you're here, would you be open to giving me a copy of the nimforum db (probably with password column wiped), so I can take a look at the "Couldn't render historic post" thing? Perhaps just changing so the original content is there below but unformatted. As these messages are showing up on google it would be better for search-ability to have the original text there too |
14:52:13 | FromDiscord | <enthus1ast> https://github.com/nim-lang/Nim/blob/e5e445f042f9037e77a0bc798960549acd4bf99a/lib/pure/asyncdispatch.nim#L1958 |
14:52:43 | FromDiscord | <dom96> In reply to @hotdog "<@132595483838251008> just while you're": this issue was resolved in Nim's rst parser recently |
14:52:59 | FromDiscord | <enthus1ast> waitFor drives the async loop (calling poll() as long as the future is not completed |
14:53:04 | FromDiscord | <hotdog> In reply to @dom96 "this issue was resolved": ah nice one |
14:53:20 | FromDiscord | <hotdog> So the forum just needs to be recompiled and deployed at some point to fix it? |
14:54:00 | FromDiscord | <enthus1ast> So you should not use waitFor in an async proc |
14:54:33 | FromDiscord | <flywind> In reply to @hotdog "<@132595483838251008> just while you're": This seems to be the fix https://github.com/nim-lang/Nim/pull/20216 |
14:56:20 | FromDiscord | <dom96> In reply to @hotdog "So the forum just": yep |
14:56:22 | FromDiscord | <enthus1ast> Oh wow I had a super lag, the async stuff has been answered already.... |
14:56:39 | FromDiscord | <aruZeta> In reply to @enthus1ast "Oh wow I had": yh lol |
14:59:00 | FromDiscord | <hotdog> In reply to @dom96 "yep": Cool. The db would still be useful for some of the other bugs if you're open to PRs |
15:00:34 | FromDiscord | <dom96> I'd be happy to share it, but I think we should check that Araq is cool with it. |
15:04:48 | FromDiscord | <hotdog> In reply to @dom96 "I'd be happy to": Ok cool |
15:07:59 | FromDiscord | <hotdog> @Araq are you ok with Dom sharing the nimforum db (with password column wiped, and any others that are sensitive) so that it's easier to set up a local instance for bugfixing? |
15:09:17 | FromDiscord | <RAM5501> What again does the mean in nim? |
15:09:29 | FromDiscord | <sealmove> it means export |
15:10:00 | FromDiscord | <sealmove> you suffix symbols with it, so that you can use them from other files |
15:10:12 | FromDiscord | <RAM5501> So without it's the same thing as using static in C? |
15:10:33 | FromDiscord | <sealmove> pretty much yes I think so |
15:10:39 | FromDiscord | <mratsim> yes, or \ is like tagging pub or public in other languages |
15:11:42 | FromDiscord | <RAM5501> Does nim come with doxygen like functionality? |
15:12:04 | FromDiscord | <flywind> yes |
15:12:28 | FromDiscord | <Bung> sent a code paste, see https://play.nim-lang.org/#ix=48wc |
15:13:38 | FromDiscord | <RAM5501> Going back to my nake question. A project on github uses nake. Is nake pretty much obsolete? |
15:14:38 | FromDiscord | <hotdog> In reply to @RAM5501 "Going back to my": It's a sort of Nim version of make |
15:15:06 | FromDiscord | <hotdog> It's not as popular as just using nimble tasks, but I think it works |
15:15:22 | FromDiscord | <RAM5501> So I don't need to use nake, I can just use nimble directly? |
15:15:26 | FromDiscord | <auxym> it's not used a lot. what is your use case though? |
15:15:43 | FromDiscord | <RAM5501> I want to continue a project that was abandoned which happened to use nake. |
15:15:50 | FromDiscord | <auxym> yes you can use nimble as a basic tool for defining build taks |
15:15:55 | FromDiscord | <auxym> (edit) "taks" => "tasks" |
15:16:07 | FromDiscord | <Bung> I remember it can be used to build libs and link to final program |
15:16:36 | FromDiscord | <auxym> in nim there is less need for make-like tools because the nim compiler handles building all the dependencies and linking everything together by default |
15:16:36 | FromDiscord | <Bung> if you build single executable nimble is fine |
15:16:36 | FromDiscord | <RAM5501> @Bung nimble or nake? |
15:17:12 | FromDiscord | <auxym> you should probably use nimble unless you need some specific feature from nake |
15:17:21 | FromDiscord | <hotdog> In reply to @RAM5501 "I want to continue": What is the project? |
15:17:43 | FromDiscord | <Bung> In reply to @RAM5501 "<@714152700920594493> nimble or nake?": nake |
15:17:47 | FromDiscord | <RAM5501> https://github.com/pragmagic/godot-nim hotdog. |
15:19:49 | FromDiscord | <RAM5501> Creator pretty much abandoned it and no chance of him continuing with 4.x. I want to make an effort to keep the project alive in some fashion. |
15:20:20 | FromDiscord | <hotdog> In reply to @RAM5501 "https://github.com/pragmagic/godot-nim hotdog.": From a quick look it doesn't seem to use nake? |
15:20:38 | FromDiscord | <sealmove> sent a code paste, see https://play.nim-lang.org/#ix=48we |
15:20:52 | FromDiscord | <RAM5501> @hotdog Weird. I could have sworn I saw a nake file somewhere in there. |
15:22:54 | FromDiscord | <mratsim> Probably the killer app in Nim: https://github.com/vrienstudios/anime-dl, https://github.com/vrienstudios/ADLCore |
15:25:20 | FromDiscord | <Bung> backup thing ? I dont think it will wide spread |
15:28:00 | FromDiscord | <RAM5501> At the minimal I should require nim and compiler? That's it? |
15:28:59 | FromDiscord | <Bung> and nimble |
15:29:06 | FromDiscord | <mratsim> In reply to @Bung "backup thing ? I": I didn't find any good novel downloader when I looked. |
15:30:07 | FromDiscord | <RAM5501> @Bung I got `requires "nim >= 0.18", "compiler >= 0.18"`so far for my requirements. I just add `'nimble >= 0.18`? |
15:30:22 | FromDiscord | <Bung> In reply to @mratsim "I didn't find any": Zlibrary is popular one |
15:30:57 | FromDiscord | <Bung> In reply to @RAM5501 "<@714152700920594493> I got `requires": I misunderstand , whats your project ? |
15:31:13 | FromDiscord | <aruZeta> In reply to @RAM5501 "<@714152700920594493> I got `requires": what's "compiler" |
15:31:20 | FromDiscord | <aruZeta> nim compiler? |
15:31:36 | FromDiscord | <Bung> yeah it's a nimble package |
15:31:45 | FromDiscord | <aruZeta> ahh |
15:32:00 | * | def- quit (Quit: -) |
15:32:05 | FromDiscord | <RAM5501> I don't really know what "compiler" means, I'm just trying to understand the godot nim original .nimble file. @Bung What I'm doing is writing and continuing godot bindings for nim. I like nim, but the bindings are pretty much dead. |
15:34:57 | FromDiscord | <Bung> I dont use it , but the godot.nimble looks simple , and this project contributors are active |
15:38:36 | FromDiscord | <RAM5501> There have been people asking if the project was abaonded or not in the github issues with stuff still not being fixed and PRs not being merged. I don't blame him for abandoning it, but it's not active. |
15:42:04 | FromDiscord | <sealmove> when is a .nims config file used? |
15:43:42 | FromDiscord | <Phil> As in when do you need it? |
15:44:07 | FromDiscord | <aruZeta> for example to add flags with `switch` |
15:44:31 | FromDiscord | <Phil> Basically if you have complex build logic that goes beyond a simple nimble task |
15:44:58 | FromDiscord | <aruZeta> instead of needing to add `--threads:on` everytime you compile `file`, create a `file.nims` to set that flag |
15:45:08 | FromDiscord | <aruZeta> for example |
15:45:21 | FromDiscord | <sealmove> In reply to @Isofruit "As in when do": no, as in when is it triggered? |
15:45:39 | FromDiscord | <sealmove> i want it to be triggered for more than 1 files |
15:45:49 | FromDiscord | <sealmove> can i specify it with a switch/ |
15:45:53 | FromDiscord | <sealmove> (edit) "switch/" => "switch?" |
15:46:09 | FromDiscord | <aruZeta> take a look here https://nim-lang.org/docs/nims.html |
15:46:21 | FromDiscord | <aruZeta> sent a long message, see http://ix.io/48wk |
15:46:35 | FromDiscord | <aruZeta> (edit) "http://ix.io/48wk" => "http://ix.io/48wl" |
15:46:55 | FromDiscord | <aruZeta> (edit) "http://ix.io/48wl" => "http://ix.io/48wm" |
15:48:13 | FromDiscord | <sealmove> this is exactly what i was looking for, many thanks1 |
15:48:16 | FromDiscord | <sealmove> (edit) "thanks1" => "thanks!" |
15:48:26 | FromDiscord | <aruZeta> np ! |
15:49:04 | FromDiscord | <RAM5501> If anyone wants to help with my bindings, you can find them here: https://github.com/jointri/GodotNimReborn3x |
15:49:24 | FromDiscord | <RAM5501> I've only just made the repo, got a bit of work to do. |
15:49:52 | * | def- joined #nim |
15:52:00 | FromDiscord | <RAM5501> There's only 3 directories really with the godot nim bindings. It's actually pretty simple. That's what I like about nim, it's simple but effective. |
15:54:44 | * | h00k_ quit (Quit: Konversation terminated!) |
15:57:42 | FromDiscord | <mratsim> In reply to @RAM5501 "If anyone wants to": https://github.com/pragmagic/godot-nim/issues/119#issuecomment-1001158910 |
15:59:07 | FromDiscord | <RAM5501> In that case, I'll just rename the repo. https://github.com/jointri/Nodot |
16:05:08 | FromDiscord | <RAM5501> I hope there is no issue to be arised from mistaking that the nim bindings were dead. I didn't want to cause any kind of trouble. |
16:07:35 | FromDiscord | <auxym> its a MIT project, you are free to fork it for whatever reason. |
16:07:59 | FromDiscord | <voidwalker> blah 1 hour later and I am still as stupid as ever about asinc/await |
16:08:15 | FromDiscord | <voidwalker> what languages implement this exactly like nim ? there's limited material on this for nim |
16:08:29 | FromDiscord | <auxym> python is not too far in concept |
16:08:46 | FromDiscord | <auxym> async/await/async def |
16:08:52 | FromDiscord | <voidwalker> I tried this code: |
16:09:00 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=48wt |
16:09:42 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=48wu |
16:09:50 | FromDiscord | <voidwalker> So what exactly was gained here with async ? |
16:11:37 | FromDiscord | <voidwalker> Looks to be a tad faster than the non async |
16:11:45 | FromDiscord | <voidwalker> sent a code paste, see https://play.nim-lang.org/#ix=48wv |
16:12:53 | FromDiscord | <auxym> yeah well in that case you're just making 3 successive requests to the same server, I wouldn't expect a huge gain. If, eg. one of your requests was much slower than the 2 others, then the fastest 2 would get executed and processed first, no matter in what order they are in the code. |
16:15:10 | FromDiscord | <RAM5501> How do I get my project listed in nimble once it's ready? |
16:15:50 | FromDiscord | <aruZeta> use `nimble publish` |
16:16:20 | FromDiscord | <RAM5501> Do I have to be signed into github to do that @aruZeta ? |
16:17:28 | FromDiscord | <aruZeta> it's just a fancy way to make a pr to add it to https://github.com/nim-lang/packages |
16:17:40 | FromDiscord | <aruZeta> In reply to @RAM5501 "Do I have to": you will need a token |
16:18:11 | FromDiscord | <aruZeta> (edit) "token" => "PAT (personal access token)" |
16:20:25 | FromDiscord | <dom96> In reply to @voidwalker "So what exactly was": in your example nothing, try creating three http client instances and then doing something like `await all(client1.request(...), client2.request(...), client3.request(...))` |
16:21:39 | FromDiscord | <voidwalker> oh I forgot it's the same httpclient Object |
16:25:10 | FromDiscord | <dom96> you have to use `all` though as well |
16:25:25 | FromDiscord | <dom96> if you `await` each in sequence then you are just doing the same thing as a synchronous program |
16:30:35 | FromDiscord | <voidwalker> what is this all thing ? googling nim all is hard : ) |
16:31:23 | FromDiscord | <aruZeta> why don't you use the search function in https://nim-lang.org/docs/manual.html |
16:31:29 | * | agentwa joined #nim |
16:31:46 | FromDiscord | <aruZeta> https://media.discordapp.net/attachments/371759389889003532/1012036502240370790/unknown.png |
16:33:35 | * | agentwa quit (Quit: Client closed) |
16:34:04 | * | agentwa joined #nim |
16:35:16 | * | agentwa quit (Client Quit) |
16:35:21 | FromDiscord | <Bung> any idea `ptr T` passing to proc , inside proc repr shows its content changed |
17:04:36 | FromDiscord | <ShalokShalom> https://github.com/pragmagic/vscode-nim |
17:04:43 | FromDiscord | <ShalokShalom> Sorry guys, is this officially dead? |
17:10:36 | FromDiscord | <tandy> nimsaem is the working one↵(@ShalokShalom) |
17:11:27 | FromDiscord | <ShalokShalom> nimsaem? |
17:12:12 | FromDiscord | <ShalokShalom> Ah, got it https://github.com/saem/vscode-nim |
17:12:15 | FromDiscord | <ShalokShalom> thanks |
17:33:09 | FromDiscord | <planetis> how do you determine a set is converted to an array instead of bit flags? |
17:35:06 | * | Jjp137 quit (Ping timeout: 244 seconds) |
17:35:25 | * | Jjp137 joined #nim |
17:40:49 | FromDiscord | <auxym> i thought `{}` sets were always represented as a bitfield? |
17:41:43 | FromDiscord | <planetis> nope set[char] is apparently char[32] |
17:42:26 | FromDiscord | <planetis> (edit) "nope set[char] is apparently ... char[32]" added "unsigned" |
17:58:26 | FromDiscord | <planetis> nvm I got it, depends on high(T) is less equal than the bits in the unsigned |
18:36:25 | * | derpydoo joined #nim |
18:42:17 | * | jmdaemon joined #nim |
19:09:59 | * | krux02 joined #nim |
19:23:32 | FromDiscord | <noiryuh> could i setup a script for fetching/downloading and extracting file in nimble? |
19:26:48 | FromDiscord | <noiryuh> sent a code paste, see https://paste.rs/8XR |
19:38:23 | * | kenran joined #nim |
20:11:00 | * | fredrikhr quit (Ping timeout: 268 seconds) |
20:11:11 | NimEventer | New thread by Stefan_Salewski: The Salewski Chess Engine is finally available, see https://forum.nim-lang.org/t/9409 |
20:33:55 | FromDiscord | <auxym> In reply to @noiryuh "could i setup a": https://github.com/nim-lang/nimble#creating-packages ctrl-f for "before hello", it explains how to do pre/post task hooks |
20:34:23 | FromDiscord | <noiryuh> i'm not asking for `before build` script |
20:34:42 | FromDiscord | <noiryuh> i'm asking for a way to call http request in nimscript/nimble |
20:40:17 | FromDiscord | <aruZeta> hmm, iirc nimscript does not support httpclient |
20:41:31 | FromDiscord | <aruZeta> so maybe you could use a `exec "wget file"` |
20:48:48 | * | kenran quit (Quit: WeeChat info:version) |
21:02:16 | * | Vladar quit (Remote host closed the connection) |
21:02:37 | FromDiscord | <Elegantbeef> What do you want? 😄↵(@sealmove) |
21:05:57 | FromDiscord | <sealmove> nothing :o |
21:08:20 | FromDiscord | <aruZeta> :| |
21:08:46 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "What do you want?": hey beef, how're are you? |
21:09:54 | FromDiscord | <aruZeta> hey beef, how elegant are you? |
21:10:04 | FromDiscord | <Elegantbeef> I refuse to believe someone would ping me without wanting something |
21:10:17 | FromDiscord | <aruZeta> lol |
21:10:24 | FromDiscord | <!Patitotective> In reply to @Elegantbeef "I refuse to believe": we're just nice people |
21:53:23 | FromDiscord | <auxym> In reply to @aruZeta "so maybe you could": yeah that or `nim r` some other nim file that calls into httpclient. @noiryuh |
22:04:19 | FromDiscord | <aruZeta> I think thta would be even better |
22:04:36 | FromDiscord | <aruZeta> Since wget and the like may not be installed on all OSs |
22:08:32 | FromDiscord | <!Patitotective> httpclient uses OpenSSL tho↵so on windows you have to have some dlls (https://forum.nim-lang.org/t/9254#60609)↵or https://github.com/treeform/puppy |
22:09:17 | FromDiscord | <Elegantbeef> Can also use chronos |
22:10:35 | FromDiscord | <!Patitotective> have to implement your own download procedure tho |
22:14:25 | * | tiorock joined #nim |
22:14:25 | * | tiorock quit (Changing host) |
22:14:25 | * | tiorock joined #nim |
22:14:26 | * | rockcavera is now known as Guest2221 |
22:14:26 | * | Guest2221 quit (Killed (calcium.libera.chat (Nickname regained by services))) |
22:14:26 | * | tiorock is now known as rockcavera |
22:14:26 | * | rockcavera quit (Remote host closed the connection) |
22:15:53 | * | ehmry quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
22:16:53 | NimEventer | New Nimble package! nim - Package providing the Nim compiler binaries plus all its source files that can be used as a library, see https://github.com/nim-lang/Nim |
22:17:06 | * | ehmry joined #nim |
22:19:04 | * | wallabra joined #nim |
22:19:46 | * | rockcavera joined #nim |
22:19:46 | * | rockcavera quit (Changing host) |
22:19:46 | * | rockcavera joined #nim |
22:24:28 | FromDiscord | <!Patitotective> In reply to @NimEventer "New Nimble package! nim": :o |
22:24:33 | FromDiscord | <!Patitotective> what is that |
22:24:39 | FromDiscord | <Elegantbeef> Nothing new |
22:24:46 | FromDiscord | <Elegantbeef> It's just a change for nimble |
22:27:31 | FromDiscord | <!Patitotective> is `nim c -r file` the same as `nim r file`? |
22:28:08 | FromDiscord | <aruZeta> I think not? |
22:29:06 | FromDiscord | <!Patitotective> sent a code paste, see https://paste.rs/1gP |
22:29:43 | FromDiscord | <dom96> In reply to @Patitotective "what is that": Nimble eating everything :D |
22:29:54 | FromDiscord | <dom96> soon we will all be Nimble packages |
22:29:56 | * | vsantana joined #nim |
22:30:15 | FromDiscord | <!Patitotective> in unix everything is a file↵in nim everything is nimble package |
22:34:31 | * | vsantana quit (Ping timeout: 260 seconds) |
22:56:11 | FromDiscord | <aruZeta> In reply to @dom96 "soon we will all": Actually we all are just accounts created by araq to pretend the language is used!↵↵(/s from. https://forum.nim-lang.org/t/9397#61802) |
23:32:38 | FromDiscord | <Bung> found I pass a ptr T to proc , inside proc echo it , it been changed |
23:49:37 | FromDiscord | <creikey> In reply to @aruZeta "Actually we all are": Loool |