00:00:01*junland quit (Quit: %ZNC Disconnected%)
00:00:31bung_type TypeA[T,R?]
00:01:20*jken quit (Quit: ZNC - http://znc.in)
00:01:36bung_so that the TypeA can have optional R
00:03:15bung_or maybe I should declare it as another type?
00:03:54*junland joined #nim
00:21:47PMunchDoing a bit of streaming to test out my new mic: https://www.twitch.tv/pmunche
00:21:58PMunchWon't be going for too long as it's already 2:30AM here :P
00:30:22*krisppurg quit (Quit: Connection closed for inactivity)
00:31:32*lritter quit (Quit: Leaving)
00:32:29*beomus[m] joined #nim
00:33:32*beomus[m] left #nim (#nim)
00:36:14*oddp quit (Ping timeout: 240 seconds)
00:45:22FromGitter<timotheecour> @leorize
00:45:49FromGitter<timotheecour> > @timotheecour how does your testament batching thing works? ⏎ > is it windows-only and how many splits can it do? ⏎ ⏎ PR should have all the context; it [https://gitter.im/nim-lang/Nim?at=5f0122bdec4a341bee0a28f8]
00:46:27FromGitter<timotheecour> it’s not windows specific, and in fact i merged a 2nd PR that used it also for openbsd; it doesn’t hardcode number of splits
00:50:17leorize[m]is it documented?
00:50:33leorize[m]shashlick: ^ potential way to do nighttest on arm
00:59:46shashlickat least arm64 we can run natively on travis, if that's what they are doing
00:59:55shashlicki didn't go that far
01:00:14shashlickarmv7l and linux i686 are left behind as well
01:04:36leorizethe testament batch thingy lets you split the load to multiple tasks
01:04:56leorizeI'm tuning up the main CI based on what I learned when creating nightlies
01:05:37*fredrik92 quit (Ping timeout: 264 seconds)
01:35:01*krux02_ quit (Remote host closed the connection)
01:40:10*NimBot joined #nim
01:43:42*chemist69 quit (Ping timeout: 256 seconds)
01:45:32*chemist69 joined #nim
02:05:56*vicfred joined #nim
02:22:32*PMunch quit (Quit: leaving)
02:24:41*vr0n joined #nim
02:32:23*muffindrake quit (Ping timeout: 244 seconds)
02:34:51*muffindrake joined #nim
02:41:16*endragor joined #nim
02:46:29*pbb quit (Remote host closed the connection)
02:47:45*pbb joined #nim
02:53:16*laqq3 quit (Ping timeout: 246 seconds)
02:58:37FromDiscord<Elegant Beef> can the field pairs be used to set the values on the object?
03:00:18FromDiscord<Elegant Beef> ah dont even need fieldpairs it seems 😄
03:07:23*opal quit (Ping timeout: 240 seconds)
03:11:40FromDiscord<Elegant Beef> Should note for the lurkers, just fields works and if on a mutable object can be set apparently 😄
03:17:30FromDiscord<Elegant Beef> Also i'm amazed how compact that solution is
03:17:32FromDiscord<Elegant Beef> https://hatebin.com/ubcbqomlme
03:21:50*opal joined #nim
03:24:52*muffindrake quit (Quit: muffindrake)
03:32:21FromDiscord<Zed> lol hatebin
03:45:16*muffindrake joined #nim
03:52:23*opal quit (Ping timeout: 240 seconds)
03:59:09*laqq3 joined #nim
04:06:02*supakeen quit (Quit: WeeChat 2.8)
04:06:28*waleee-cl quit (Quit: Connection closed for inactivity)
04:06:42*supakeen joined #nim
04:07:55*opal joined #nim
04:11:43*solitudesf joined #nim
04:19:40*audiophile joined #nim
04:33:49*laqq3 quit (Ping timeout: 264 seconds)
04:48:34*dddddd quit (Ping timeout: 260 seconds)
05:35:32*marnix joined #nim
05:43:22*vikfret joined #nim
05:56:34*audiophile quit (Quit: Default Quit Message)
06:06:48*vr0n quit (Ping timeout: 244 seconds)
06:07:25*marnix quit (Ping timeout: 264 seconds)
06:42:17*kenran joined #nim
06:44:24shashlickany macro experts know how to get {.push.} to work with 3rd party pragmas
06:44:53shashlickmy macro works as a pragma when used in context but not with {.push.}
06:46:17FromGitter<tim-st> is there a datetime type in stdlib that uses 8 bytes memory only? times.DateTime is 104bytes while uint64(2020_05_12_13_06_01) is only 8 bytes :\
06:46:56FromGitter<timotheecour> shashlick this may require compiler support to support that (see also https://github.com/nim-lang/Nim/pull/14904#issuecomment-653848460)
06:46:57disbot➥ 3Fix #2408 - add -d:globalSymbols
06:49:59shashlickoh so user macros cannot be used in {.push.}?
06:50:44FromGitter<timotheecour> try and see :)
06:51:24shashlickdoesn't work for me
06:52:22FromGitter<timotheecour> @leorize ⏎ ⏎ > *<leorize[m]>* is it documented? ⏎ ⏎ documentation for that could for sure be improved; see https://github.com/nim-lang/Nim/pull/14823 for a description for now (and feel free to send a PR to document it if you have time) [https://gitter.im/nim-lang/Nim?at=5f0178a5c223cc536a5573f9]
06:52:23disbot➥ 6testament: generic N-fold batching: windows CI 37mn=>16m
07:06:19shashlickpushed pragmas also don't show up in macros - e.g. {.push cdecl.} is not provided to my custom pragma which is attached to a proc
07:07:30*notandinus quit (Quit: be back in a minute)
07:09:04shashlickif the params are typed they show up but then i cannot modify the ast anymore
07:09:57*team\andinus joined #nim
07:11:16*team\andinus is now known as notandinus
07:11:35*marnix joined #nim
07:19:24*kenran quit (Ping timeout: 256 seconds)
07:25:22*pietroppeter joined #nim
07:25:49shashlick@leorize - lazylib v0.1 is ready to go
07:26:42shashlickmodified pcre.nim to use lazylib instead of dynlib and ran re.nim tests in tre.nim - all pass
07:27:14shashlickbut {.push.} and {.pragma: xyz.} shortcuts don't work
07:33:14*ZORR0W joined #nim
07:34:17*ZORR0W quit (Client Quit)
07:34:33*ZORR0W joined #nim
07:36:24*ZORR0W quit (Client Quit)
07:40:17FromDiscord<Varriount> What's lazylib?
07:41:27shashlick@Varriount: started with https://github.com/nimterop/nimterop/issues/217
07:41:28disbot➥ 3Allow shared libraries to be loaded at run time instead of at load time
07:41:38shashlickbut @leorize suggests making it a part of Nim itself
07:41:56shashlickright now, i've made it with macros so it can be a standalone package
07:42:08shashlickbut it has some limitations, hopefully we can figure it out with some help
07:42:18shashlickmaking a repo for community review
07:43:17FromDiscord<Varriount> What's the benefit?
07:43:49shashlickbasically automating the use of the dynlib module
07:45:21shashlickhttps://irclogs.nim-lang.org/19-05-2020.html#03:06:16 is some context
07:46:21FromDiscord<Yardanico> Maybe Fusion then? :P
07:49:54shashlickyep that's the goal
07:50:09shashlicklet's see if it meets the quality
08:02:28FromDiscordUptime - 2 days, 1 hour, and 44 minutes
08:09:02shashlick@leorize - https://github.com/genotrance/lazylib
08:10:55FromDiscord<Varriount> Shashlick: From the linked GitHub thread:
08:11:06FromDiscord<Varriount> > The developer of the nim c wrapper does not have to make assumptions about what the version of the library is installed at run time.
08:11:33FromDiscord<Varriount> Isn't that what the DLL pragma's pattern matching is for?
08:12:05shashlickyes but if a symbol is missing, it will still fail at startup
08:12:45shashlickyou cannot have code that checks if symbol is present and work around if it isn't
08:12:55shashlickor limit functionality, notify the user or anything
08:13:41FromDiscord<Shucks> Did anyone tried to combine nimassets with dynlib yet? Could that work?
08:14:07shashlickwith lazylib it will work
08:14:20FromDiscord<Varriount> Ah, and if you use dynlib, you have to supply a specific path?
08:14:42shashlicknimdeps is another package like nimassets
08:15:13shashlickno it just searches standard system path, but also accepts a relative or full path
08:15:28FromDiscord<Varriount> But doesn't do pattern matching
08:15:34shashlickunderlying code still calls dlopen or whatever
08:15:45shashlickyes that's right
08:16:05shashlickactually dynlib can do pattern matching if specified
08:16:07shashlickas can lazylib
08:16:21FromDiscord<Shucks> so combining nimassets with lazylib? That way I don't have to serve the libraries with the binary anymore?
08:16:36shashlickyep, you can extract it then load it
08:16:46FromDiscord<Shucks> interesting! thanks
08:41:58Oddmongersome of you could be interested in https://www.handmade-seattle.com/
08:45:57Oddmongeroh, i thought it was free event (as online), sorry
08:53:21*dddddd joined #nim
08:55:38FromDiscord<Shucks> Could koch update to the latest release build? Im to lazy to download gcc again and setup the env's again ;p
09:03:37*drewr quit (Ping timeout: 260 seconds)
09:05:22*drewr joined #nim
09:14:22*pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
09:15:49*pbb joined #nim
09:28:46*marnix quit (Ping timeout: 246 seconds)
09:33:45*nikita` joined #nim
09:33:45*nikita` quit (Changing host)
09:33:45*nikita` joined #nim
09:37:02*nikita` quit (Client Quit)
09:39:22*oddp joined #nim
09:48:24FromDiscord<Shucks> where can I download older nim release builds?
09:49:55*kenran joined #nim
09:54:40*kenran quit (Ping timeout: 246 seconds)
09:59:09OddmongerShucks: if you are on linux, there are (at least for archlinux) the option to downgrade packet, but it will replace current by default
10:02:16FromDiscord<Shucks> Naw, im on Windows
10:07:55Oddmongermay be checkout a version with git, and compile it ? But i'm not sure (with tags ?)
10:13:04FromDiscord<Shucks> Downloads aren't deleted on the main page. You can just change the version number. e.g.: `https://nim-lang.org/download/nim-1.2.4_x64.zip`
10:13:13FromDiscord<Shucks> `https://nim-lang.org/download/nim-1.2.2_x64.zip`
10:17:18*marnix_ joined #nim
10:19:34Oddmongerlatest stable nim is 1.0.7 ?
10:19:57Oddmongeri see this with «git nim stable» on disruptek git
10:21:00*chemist69 quit (Ping timeout: 244 seconds)
10:22:07*chemist69 joined #nim
10:40:35*Vladar joined #nim
10:43:27*fredrik92 joined #nim
10:44:41*fredrik92 is now known as fredrikhr
10:55:10*pietroppeter quit (Quit: Connection closed for inactivity)
11:11:07FromGitter<bung87> any port of rxjs like lib?
11:14:16FromDiscord<Yardanico> @Oddmonger no
11:14:22FromDiscord<Yardanico> Latest stable Nim is 1.2.4
11:14:41FromDiscord<Yardanico> 1.0.7 is a devel version, you can see that by the odd patch number
11:14:53FromDiscord<Yardanico> Same reason why current devel is on 1.3.5
11:15:31*marnix_ quit (Ping timeout: 246 seconds)
11:23:52FromDiscord<Vindaar> can someone enlighten me as to how nimble chooses which version of a package it installs? should be the latest tagged one, but apparently that doesn't always work? can someone check which version of arraymancer is installed for you with a simple `nimble install arraymancer`?
11:28:50FromDiscord<Vindaar> oh, I think I figured out what the problem is. It might check for the latest tag, but the version information shown to the user is of course what's written in the nimble file at the time the tag was created
11:28:57FromDiscord<Vindaar> thanks!
11:29:35FromDiscord<Vindaar> in case of arraymancer the nimble file was updated after the version was tagged
11:31:16FromDiscord<Vindaar> @mratsim ^
11:56:19*vikfret quit (Quit: Leaving)
12:00:10*tane joined #nim
12:06:02*supakeen quit (Quit: WeeChat 2.8)
12:06:39*supakeen joined #nim
12:26:58*marnix_ joined #nim
12:29:34*Vladar quit (Quit: Leaving)
12:40:01*marnix__ joined #nim
12:42:49*marnix_ quit (Ping timeout: 264 seconds)
12:45:08*marnix___ joined #nim
12:48:24*marnix__ quit (Ping timeout: 256 seconds)
12:49:11Oddmongerdisruptek: thank you for gitnim, very handy. So , except doing « git nim <version> », there's nothing to do for having a full nim env ?
12:49:40Oddmongernothing _else_ to do… i mean
12:54:18*marnix joined #nim
12:56:14*marnix___ quit (Ping timeout: 240 seconds)
13:00:49*marnix quit (Ping timeout: 264 seconds)
13:02:15FromDiscord<Yardanico> It's like pacman when there are no updates
13:02:28FromDiscord<Yardanico> "there's nothing to do" :(
13:05:53Oddmongerwell i've tried this one because of pacman, yes
13:10:24*lbart quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
13:24:49*fanta1 joined #nim
13:26:29FromGitter<bung87> https://github.com/bung87/rxnim/blob/master/src/rxnim/observable.nim
13:26:40FromGitter<bung87> I got `Error: type mismatch: got <proc (subscriber: Subscriber[system.int]){.closure.}> but expected 'proc (subscriber: Subscriber[system.any]){.closure.}'`
13:27:27FromGitter<bung87> but I dont specify any params as `Subscriber[system.any]`
13:36:34*dddddd quit (Ping timeout: 256 seconds)
13:39:16disruptekOddmonger: nothing else to do.
13:39:32disruptekit's just git.
13:40:21disruptekyou are encouraged to hack it, though.
13:42:25*krux02 joined #nim
13:44:06disruptekwho wants an arc bug?
13:47:11Zevvno thank you, I'm good
13:48:50disruptekZevv: you have a bad attitude.
13:49:02disrupteki really dig that about you.
13:54:33FromDiscord<Yardanico> @disruptek report arc bugs please :) there's a a few regressions after the scoped PR but it's all good
13:54:50Oddmongerwhat is an arc bug ?
13:54:56Oddmongerarchitecture ?
13:56:19Zevvdisruptek: I'm totally done with this Nim shit. I'm the Go man now
13:56:39*marnix joined #nim
14:00:52FromDiscord<Yardanico> @Oddmonger ARC as in --gc:arc
14:01:19FromDiscord<Yardanico> https://youtu.be/aUJcYTnPWCg to quickly catch up
14:01:41FromDiscord<Yardanico> And https://forum.nim-lang.org/t/5734 but read the comments too, the top post is outdated
14:03:14Oddmongerthank you
14:05:05FromDiscord<lqdev> ok this is really cool https://play.nim-lang.org/#ix=2qXk
14:05:14FromDiscord<lqdev> like, I knew that fieldPairs unrolls the loop
14:05:24FromDiscord<lqdev> but the fact that the field name is a static string is really useful
14:05:29FromDiscord<lqdev> for some magic that I'm about to do
14:06:59disruptekerror[E0723]: heap allocations are not allowed in const fn
14:07:02*marnix_ joined #nim
14:07:59disruptekgo's strengths become its weaknesses.
14:08:26disruptekat least rust has legs.
14:09:42*someunknownuser joined #nim
14:10:25*marnix quit (Ping timeout: 264 seconds)
14:11:42*marnix_ quit (Ping timeout: 256 seconds)
14:12:24*marnix joined #nim
14:19:35FromDiscord<lqdev> anyone knows why this limitation exists? https://play.nim-lang.org/#ix=2qXo
14:19:45FromDiscord<lqdev> my guess is that the parser doesn't know how to handle this case
14:20:28*vsantana joined #nim
14:27:42FromDiscord<Rika> My guess is that it's not a symbol that needs stropping
14:28:40Yardanico@Rika but that works for procs
14:28:46Yardanicoor for other symbols
14:29:03Yardanico!eval let `lol` = 5; echo `lol`
14:29:14FromDiscord<lqdev> also, it doesn't work with this
14:29:25FromDiscord<lqdev> !eval echo (`..`: 1, `+`: 2)
14:29:27NimBotCompile failed: /usercode/in.nim(1, 11) Error: named expression expected
14:30:11NimBot10ms between me and the server.
14:30:18FromDiscord<lqdev> oh, and also
14:30:23FromDiscord<lqdev> it works with exactly one field
14:30:29FromDiscord<lqdev> !eval echo (`a`: 1)
14:30:31NimBot(a: 1)
14:30:33*vsantana quit (Ping timeout: 244 seconds)
14:30:52FromDiscord<lqdev> sounds like a bug
14:31:14Yardanicoopen an issue
14:31:23FromDiscord<Rika> sounds like a bug yes
14:31:25Yardanicobtw we have 1685 issues open :P
14:32:22Yardanicoalso is it indended that almost no one labels issues nowadays?
14:32:39Yardanicolike half of newer issues aren't labeled
14:34:02*waleee-cl joined #nim
14:34:48*Vladar joined #nim
14:34:54*Vladar quit (Remote host closed the connection)
14:43:47FromDiscord<Shucks> ;o
14:58:46*noonien joined #nim
15:00:44*lritter joined #nim
15:03:35FromDiscord<dom96> lol, I think I was the only one to actually label issues
15:08:43Yardanico@dom96 I did it too when I was a collaborator (mostly in 2017 though), maybe I should ask 4raq to give it to me again (yes I was stupid so I deleted myself from collaborators of the nim repo)
15:08:54YardanicoI have some free time to label issues
15:15:29ZevvWow, arc is scope based! Congrats ar4q!
15:15:40Yardanicohow else we can change his nickname :thinking:
15:16:00Yardanicoah yes cyrillic a's
15:16:30Yardanicoboth Аs here are russian
15:16:49ZevvYeah, I can tell from the smell of cheap wodka
15:17:12ZevvIs that a russian v?
15:17:51Yardanicowell yeah it's closer to russian в
15:18:25ZevvYes, please!
15:18:32Yardanicoi am yet to drink it xd
15:18:37Yardanico*can't consider myself a true slav*
15:18:48Zevvwhy not?
15:19:07Zevvis that some ancient ritual?
15:19:23Yardanicoyes of course, everyone on the internet knows that we drink vodka and play on balalaika with our bears
15:19:28YardanicoI am yet to drink vodka
15:19:59ZevvWell, I never walked on wooden shoes, bought tulips or smoked weed
15:21:47ZevvBut you're from budapest, not russia, right?
15:22:00ZevvThat's Unicum for you, not водка
15:23:46YardanicoZevv: what
15:23:53Yardanicoyou're mistaking me with someone else :P
15:24:04YardanicoI'm 100% russian and liven 100% of my life in russia XD
15:24:29YardanicoAlso, seems like sunday is really a quiet day
15:24:33Yardanicolast post on the forum 8 hours ago
15:24:37Yardanicoalmost no new github notifications
15:24:40Yardanicoeveryone's so quiet
15:25:18ZevvOh *you* are the russian!
15:25:30solitudesfwait till disruptek wakes up
15:25:34Zevvwell, I usually tell them from the smell of cheap wodka, so that's why :)
15:26:09*pietroppeter joined #nim
15:26:28Yardanicosolitudesf: yeah I'm waiting for him to come after me
15:26:35Yardanicowe never forget
15:26:40Yardanicowe do not forget*
15:26:42Zevvwhat did you do to him?
15:26:57Yardanicobut he planned to go to russia by airplane
15:26:58Yardanicoand fine me
15:26:59Zevvhe did it again, didn't he?
15:27:13*nkoz quit (Ping timeout: 264 seconds)
15:27:14Zevvbut we don't talk about that here anymore
15:27:18Zevvsince the Incident
15:40:21*endragor quit (Remote host closed the connection)
15:40:28*someunknownuser quit (Quit: someunknownuser)
15:40:48*endragor joined #nim
15:50:14*endragor quit (Ping timeout: 240 seconds)
15:57:15*sknebel quit (Quit: No Ping reply in 210 seconds.)
15:57:37*sknebel joined #nim
16:03:38*arecaceae quit (Remote host closed the connection)
16:04:00*arecaceae joined #nim
16:15:20FromGitter<ynfle> Any way to get the AST expansion of a `fmt` call
16:18:11FromDiscord<lqdev> yes, there's `macros.expandMacros`
16:18:29FromDiscord<lqdev> https://play.nim-lang.org/#ix=2qXO
16:21:45FromGitter<ynfle> I want to be able to do `x = someProc(fmt"{1}")` and have the AST stored in x
16:21:52*endragor joined #nim
16:22:27FromGitter<ynfle> Or, to have a proc the convert untyped to typed ast
16:22:40*kenran joined #nim
16:27:22*kenran quit (Ping timeout: 246 seconds)
16:27:24FromGitter<recloser> `macro getAst(something: typed)` will have the expanded ast in `something` when called like `getAst(fmt"whatever {123}")`
16:27:59FromGitter<recloser> simply converting untyped NimNodes into typed isn't really possible though
16:29:28*endragor quit (Ping timeout: 246 seconds)
16:29:53*sknebel quit (Remote host closed the connection)
16:31:35*sknebel joined #nim
16:34:51FromGitter<ynfle> @recloser, that works perfectly, I just want he ast expansion returned
16:34:53FromGitter<ynfle> Thanks
16:36:32FromGitter<deech> How do I forward declare an object? I'm trying to wrap two mutually dependent C++ headers.
16:37:55FromDiscord<lqdev> not possible, you have to have both objects in a single type section
16:38:28FromDiscord<lqdev> there's a feature called package level objects which might help https://nim-lang.org/docs/manual_experimental.html#package-level-objects
16:38:54FromDiscord<lqdev> but the docs are quite vague on how the feature works, and I haven't been able to get it to work
16:39:36*marnix quit (Ping timeout: 256 seconds)
16:39:37FromDiscord<lqdev> @deech ↑
16:40:34FromGitter<deech> That's *kind* of what I'm looking for. I'm guessing mutually dependent modules within a package are disallowed?
16:41:50FromDiscord<lqdev> well, Nim doesn't support recursive dependencies very well, so you may have to do some gymnastics to get stuff to work
16:43:29*laqq3 joined #nim
16:44:39FromDiscord<lqdev> why does choosenim complain to me that there's no recent nightly release found?
16:51:06FromDiscord<exelotl> note, you can often solve mutual dependency problems by moving the troublesome import further down, so it appears just above the place where it's actually needed, rather than at the top of the file.
17:00:39FromDiscord<Shucks> how would I link a static library? passL or just link?
17:09:49*laqq3 quit (Ping timeout: 264 seconds)
17:10:17Oddmongeropengl binding : i see glut + opengl1.2 samples, can we use core model with this one, or should i use glfw binding ?
17:11:23FromDiscord<lqdev> Oddmonger: if you're looking for core OpenGL bindings you may want to try out aglet https://github.com/liquid600pgm/aglet
17:11:34FromDiscord<lqdev> it implements most of GL 3.3
17:12:17FromDiscord<lqdev> if you want the raw C API, check out nimgl https://github.com/nimgl/nimgl
17:13:39Oddmongerok , thank you
17:14:19Oddmongeri'm amazed glut is still amongst us :)
17:14:31FromDiscord<Rika> glut?
17:15:07FromDiscord<lqdev> OpenGL Utility Toolkit
17:15:19FromDiscord<lqdev> it's that legacy library you should never use in modern OpenGL programs
17:15:35FromDiscord<lqdev> because there exist better alternatives
17:16:13Oddmongerin fact, the core model is a pita, but hey
17:17:17FromDiscord<lqdev> aglet makes it easy :)
17:17:46Oddmongergood to know, i will try it
17:22:48*laqq3 joined #nim
17:23:40Oddmongerah it uses glfw for context creation
17:32:35*kenran joined #nim
17:32:51FromDiscord<lqdev> yes, though new backends can be implemented with relative ease
17:33:12FromDiscord<lqdev> also it doesn't support all of glfw's features yet, as I didn't really have time to implement them
17:33:22FromDiscord<lqdev> in the public API
17:35:19*endragor joined #nim
17:35:52*pietroppeter quit (Quit: Connection closed for inactivity)
17:37:01*kenran quit (Ping timeout: 246 seconds)
17:39:55FromGitter<ynfle> Is there a way to `getAst(<ast-of-fmt-call>)`? @recloser
17:40:27*fanta1 quit (Quit: fanta1)
17:40:32FromDiscord<lqdev> what do you mean?
17:41:08FromDiscord<Shucks> If im trying to wrap a module which uses namespaces `NameSpace::NameSpace::FunctionA`. How would I importc them?
17:41:25FromDiscord<lqdev> c++?
17:41:34FromDiscord<Shucks> yea
17:41:47FromDiscord<lqdev> use importcpp https://nim-lang.org/docs/manual.html#implementation-specific-pragmas-importcpp-pragma
17:42:09FromGitter<ynfle> I have an ast of a `fmt` call. I want to have it expanded. recloser suggested `getAst()`, but I can't figure how to put the AST in a way the is usable for that proc
17:43:00*NimBot joined #nim
17:43:26FromDiscord<lqdev> you mean, you get a call to fmt in a macro param (as a NimNode), and need to expand it?
17:43:44FromDiscord<Shucks> Thanks gonna give it a try 🙂
17:43:47FromGitter<ynfle> Yup
17:43:50FromGitter<ynfle> It's untyped
17:43:57FromDiscord<lqdev> hm
17:44:37*endragor quit (Ping timeout: 264 seconds)
17:44:54FromDiscord<lqdev> passing it to a `typed` parameter should resolve the issue
17:44:56FromGitter<recloser> @ynfle i didn't mean macros.getAst but rather your own macro, like https://play.nim-lang.org/#ix=2qXR
17:45:01FromDiscord<lqdev> ie. expand the macro
17:45:19FromGitter<recloser> see the debug output for the expanded ast
17:45:27FromDiscord<lqdev> that's how expandMacros works under the hood btw
17:46:45FromDiscord<lqdev> if you're getting your untyped AST from some domain-specific language, you need to create another macro which accepts a typed param and generate a call to that macro from your first macro
17:49:15*ForumUpdaterBot quit (Remote host closed the connection)
17:49:22*ForumUpdaterBot joined #nim
17:50:59*laqq3 quit (Remote host closed the connection)
17:51:23*laqq3 joined #nim
17:52:16Yardanicobtw, seems like arc forum post has tons of views nowadays https://forum.nim-lang.org/t/5734
17:52:23Yardanicowonder if it's the most viewed forum on the thread
17:52:35Yardanico*most viewed thread on the forum
18:04:23FromDiscord<Shucks> https://paste.sh/MnO4hwuK#vVHm9w86iycoO2-8ZoE7QtIh
18:08:16*noonien quit (Quit: Connection closed for inactivity)
18:12:54Yardanico@Shucks well you have to use importcpp syntax
18:13:34Yardanicochange importcpp: "Memory::Ex::GetProcessIdByName" to importcpp: "Memory::Ex::GetProcessIdByName(@)"
18:19:24Yardanicobut the error is strange nonetheless
18:19:31Yardanicowonder why nim translated it to such C++
18:22:37FromDiscord<Shucks> meh, i'll stick to c libs. I can't get that running at all lol
18:27:26FromDiscord<Shucks> Well compiler is saying `error: 'Memory' has not been declared` in the example code its emitting `using namespace`. Guess i'll need to do that aswell.
18:27:54Yardanicoalso doesn't win32 api have the functions you need?
18:28:09Yardanicoand yeah you need to use emit
18:28:11Yardanicoto use namespaces
18:28:15Yardanicosee first example in https://nim-lang.org/docs/manual.html#implementation-specific-pragmas-importcpp-pragma
18:28:34FromDiscord<Shucks> Yea, i'm just playing with nim. That code can easily be recoded in nim itself
18:32:00FromDiscord<Shucks> Just wanted to see how fast you can wrap a library instead of recoding stuff. But (atleast for me) it isnt that easy ;D
18:32:15FromDiscord<Shucks> `https://github.com/rdbo/Memory`
18:32:40FromGitter<recloser> if Memory is in a namespace just use the fully qualified name in importcpp, eg `Whatever::Memory::...`, no need to emit `using namespace Whatever`
18:36:42FromGitter<recloser> in the linked snippet you don't seem to have a header pragma
18:37:33FromGitter<recloser> you need something like `{.header:"<mem.h>", importcpp:...`
18:37:43FromDiscord<Shucks> huh, lets try
18:38:08FromDiscord<Shucks> well im not using the source files. Just the static lib
18:41:15FromGitter<recloser> you need a header even if you're only linking against a static lib, since the function symbols are all mangled in cpp
18:41:50*dddddd joined #nim
18:43:45FromGitter<recloser> nvm, it's not even about that, the produced cpp file needs to have some actual definitions, the importcpp pragma doesn't actually produce any within the cpp file
18:44:33FromGitter<recloser> it just replaces the calls within nim with the given string
18:57:11FromDiscord<Recruit_main707> I dont understand what this # and @ symbols are for in importc/cpp pragmas, is there any reference to this?
18:58:17FromDiscord<Shucks> > see first example in https://nim-lang.org/docs/manual.html#implementation-specific-pragmas-importcpp-pragma
18:59:48FromGitter<recloser> https://nim-lang.org/docs/manual.html#importcpp-pragma-importcpp-for-procs
19:05:35FromDiscord<Recruit_main707> Thx both
19:10:30FromDiscord<demotomohiro> Nim core team aware that nightlies is not releasing linux_x64/linux_x32 binary for more than 1 month?↵https://github.com/nim-lang/nightlies
19:10:36shashlickManually wrapping is fine for a few procs and types here and there, anything else you should use c2nim or nimterop
19:12:00Yardanico@demotomohiro try https://github.com/alaviss/nightlies/releases
19:13:55FromDiscord<demotomohiro> @Yardanico Thx
19:16:34FromDiscord<demotomohiro> wandbox.org download nightly devel linux_x64 Nim but it is not updated for long time.
19:17:28shashlickI thought that was fixed
19:17:30shashlickLet me see
19:18:26*kenran joined #nim
19:21:28FromDiscord<demotomohiro> alaviss is fixing nightlies and nim-lang/nightlies will soon release linux_64 one again?
19:21:40Yardanicoalaviss is leorize btw, not sure if they're online rn :P
19:24:02FromDiscord<demotomohiro> @Yardanico I didn't know that
19:24:16FromDiscord<demotomohiro> It is releasing linux_arm but not linux_x64/x32 for long time looks strange.
19:26:10shashlicknim doc issues as usual
19:26:44FromDiscord<lqdev> /home/daknus/Coding/Nim/rapid/tests/tgfx.nim(13, 7) Warning: observable stores to 'frame' [ObservableStores]
19:26:45FromDiscord<lqdev> uh?
19:26:49FromDiscord<lqdev> what does that mean?
19:27:18Yardanicowell see https://github.com/nim-lang/RFCs/issues/230
19:27:19disbot➥ 3Nim's NRVO is C++'s inplace construction (placement new) ; snippet at 12https://play.nim-lang.org/#ix=2oor
19:27:56Yardanicobut it'll probably change
19:28:25Yardanicorn it's only a warning
19:28:42YardanicoI think it's related to storing stuff in result with exceptions or something
19:28:48FromDiscord<lqdev> what does NRVO mean?
19:29:09YardanicoNamed Return Value Optimization
19:29:10Yardanicoa C++ term
19:30:47FromDiscord<lqdev> huh
19:31:19FromDiscord<lqdev> well, in my case `frame` is a variable I'm just constructing
19:31:24FromDiscord<lqdev> `var frame = win.render()`
19:54:05*abm joined #nim
20:02:36*zlick joined #nim
20:14:29*suchasurge quit (*.net *.split)
20:14:29*hecanjog quit (*.net *.split)
20:14:29*livcd quit (*.net *.split)
20:14:29*ssbr quit (*.net *.split)
20:14:29*njoseph quit (*.net *.split)
20:14:30*idxu quit (*.net *.split)
20:16:02*ssbr joined #nim
20:16:33*sagax joined #nim
20:19:38*livcd joined #nim
20:20:39*hecanjog joined #nim
20:23:18FromDiscord<Shucks> @Yardanico you had a snippet with a template which generates procs for different logging levels
20:23:25FromDiscord<Shucks> could you gimme that link again
20:23:31Yardanicoone sec
20:23:53*Trustable joined #nim
20:23:59Yardanicothis one is a fixed version of older one
20:24:03Yardanicoproperly outputs arguments
20:24:56Yardanicojust fyi there's also https://nim-lang.org/docs/logging.html
20:25:02*suchasurge joined #nim
20:25:02*njoseph joined #nim
20:25:02*idxu joined #nim
20:25:27FromDiscord<Shucks> im not logging. I just noticed I'm calling newException way to often in my source lol
20:25:47FromDiscord<Shucks> just thought this would be helpful
20:27:35*ssbr quit (*.net *.split)
20:27:35*oddp quit (*.net *.split)
20:27:36*junland quit (*.net *.split)
20:27:36*rockcavera quit (*.net *.split)
20:27:36*Mister_Magister quit (*.net *.split)
20:27:36*zedeus quit (*.net *.split)
20:27:36*Zevv quit (*.net *.split)
20:27:36*kungtotte quit (*.net *.split)
20:27:36*clemens3 quit (*.net *.split)
20:27:36*zama quit (*.net *.split)
20:27:36*bacterio quit (*.net *.split)
20:29:24*ssbr joined #nim
20:29:24*oddp joined #nim
20:29:24*junland joined #nim
20:29:24*rockcavera joined #nim
20:29:24*Mister_Magister joined #nim
20:29:24*zedeus joined #nim
20:29:24*Zevv joined #nim
20:29:24*kungtotte joined #nim
20:29:24*clemens3 joined #nim
20:29:24*zama joined #nim
20:29:24*bacterio joined #nim
20:30:14*xace quit (*.net *.split)
20:30:14*sz0 quit (*.net *.split)
20:30:14*D_ quit (*.net *.split)
20:30:14*oprypin quit (*.net *.split)
20:30:15*ormiret quit (*.net *.split)
20:30:15*alehander92_ quit (*.net *.split)
20:30:15*zielmicha__ quit (*.net *.split)
20:30:15*Avatarfighter quit (*.net *.split)
20:30:15*golechwi1 quit (*.net *.split)
20:30:52*hyiltiz quit (*.net *.split)
20:30:52*gangstacat quit (*.net *.split)
20:30:52*wowi42 quit (*.net *.split)
20:30:52*dgb quit (*.net *.split)
20:30:52*Prestige quit (*.net *.split)
20:30:52*euantor quit (*.net *.split)
20:30:52*Hotbees quit (*.net *.split)
20:30:52*skrylar[m] quit (*.net *.split)
20:30:53*codic quit (*.net *.split)
20:30:53*GitterIntegratio quit (*.net *.split)
20:30:53*tinga quit (*.net *.split)
20:30:53*hoek quit (*.net *.split)
20:30:53*sirn quit (*.net *.split)
20:30:53*FromGitter quit (*.net *.split)
20:31:04*xace joined #nim
20:31:04*sz0 joined #nim
20:31:04*D_ joined #nim
20:31:04*oprypin joined #nim
20:31:04*ormiret joined #nim
20:31:04*alehander92_ joined #nim
20:31:04*zielmicha__ joined #nim
20:31:04*Avatarfighter joined #nim
20:31:04*golechwi1 joined #nim
20:31:37*hyiltiz joined #nim
20:31:37*gangstacat joined #nim
20:31:37*wowi42 joined #nim
20:31:37*dgb joined #nim
20:31:37*Prestige joined #nim
20:31:37*euantor joined #nim
20:31:37*Hotbees joined #nim
20:31:37*skrylar[m] joined #nim
20:31:37*codic joined #nim
20:31:37*GitterIntegratio joined #nim
20:31:37*tinga joined #nim
20:31:37*hoek joined #nim
20:31:37*sirn joined #nim
20:31:37*FromGitter joined #nim
20:31:49*drewr quit (*.net *.split)
20:31:49*jackfly26[m] quit (*.net *.split)
20:31:49*Zoom[m] quit (*.net *.split)
20:31:49*oneark quit (*.net *.split)
20:31:50*planetis[m] quit (*.net *.split)
20:31:50*BitPuffin quit (*.net *.split)
20:31:50*nisstyre quit (*.net *.split)
20:31:50*Northstrider[m] quit (*.net *.split)
20:31:50*oz quit (*.net *.split)
20:31:50*EastByte quit (*.net *.split)
20:32:17*hoek quit (Max SendQ exceeded)
20:32:35*drewr joined #nim
20:32:35*jackfly26[m] joined #nim
20:32:35*planetis[m] joined #nim
20:32:35*Zoom[m] joined #nim
20:32:35*oneark joined #nim
20:32:35*BitPuffin joined #nim
20:32:35*nisstyre joined #nim
20:32:35*Northstrider[m] joined #nim
20:32:35*oz joined #nim
20:32:35*EastByte joined #nim
20:32:36*nisstyre quit (Max SendQ exceeded)
20:33:07*dddddd quit (*.net *.split)
20:33:07*sacredfrog quit (*.net *.split)
20:33:07*onionhammer quit (*.net *.split)
20:33:07*GaveUp quit (*.net *.split)
20:33:07*disbot quit (*.net *.split)
20:33:07*federico3 quit (*.net *.split)
20:33:08*vegai quit (*.net *.split)
20:33:08*shashlick quit (*.net *.split)
20:33:08*revere quit (*.net *.split)
20:33:22*dddddd joined #nim
20:33:22*sacredfrog joined #nim
20:33:22*onionhammer joined #nim
20:33:22*GaveUp joined #nim
20:33:22*disbot joined #nim
20:33:22*vegai joined #nim
20:33:22*federico3 joined #nim
20:33:22*shashlick joined #nim
20:33:22*revere joined #nim
20:33:23*sz0 quit (Ping timeout: 260 seconds)
20:33:47*nisstyre joined #nim
20:34:06*xicheng[m] quit (Ping timeout: 244 seconds)
20:34:13*sknebel quit (*.net *.split)
20:34:13*supakeen quit (*.net *.split)
20:34:13*vesper quit (*.net *.split)
20:34:13*MightyJoe quit (*.net *.split)
20:34:13*screens__ quit (*.net *.split)
20:34:14*vqrs quit (*.net *.split)
20:34:14*lain quit (*.net *.split)
20:34:24*lnxw37d4 quit (Ping timeout: 246 seconds)
20:34:24*d10n-work quit (Ping timeout: 246 seconds)
20:34:28*skrylar[m] quit (Ping timeout: 250 seconds)
20:34:29*GitterIntegratio quit (Ping timeout: 250 seconds)
20:34:37*slackytude[m] quit (Ping timeout: 244 seconds)
20:34:47*sirn quit (Ping timeout: 240 seconds)
20:34:47*sknebel joined #nim
20:34:47*supakeen joined #nim
20:34:47*vesper joined #nim
20:34:47*MightyJoe joined #nim
20:34:47*screens__ joined #nim
20:34:47*vqrs joined #nim
20:34:47*lain joined #nim
20:34:48*watzon quit (Ping timeout: 244 seconds)
20:34:52*BitPuffin quit (Ping timeout: 260 seconds)
20:34:54*hecanjog quit (*.net *.split)
20:34:54*livcd quit (*.net *.split)
20:34:54*abm quit (*.net *.split)
20:34:54*lritter quit (*.net *.split)
20:34:54*sagax quit (*.net *.split)
20:34:54*oculux quit (*.net *.split)
20:34:54*Lord_Nightmare quit (*.net *.split)
20:34:54*kitech1 quit (*.net *.split)
20:34:54*bung_ quit (*.net *.split)
20:34:54*sentreen quit (*.net *.split)
20:34:54*dv^_^ quit (*.net *.split)
20:34:54*so quit (*.net *.split)
20:34:55*disruptek quit (*.net *.split)
20:34:55*mal`` quit (*.net *.split)
20:34:55*voltist quit (*.net *.split)
20:34:55*jxy quit (*.net *.split)
20:34:55*vesper quit (Max SendQ exceeded)
20:35:08*Zambyte[m] quit (Ping timeout: 244 seconds)
20:35:23*matti quit (Ping timeout: 272 seconds)
20:35:34*Cadey quit (*.net *.split)
20:35:34*jholland__ quit (*.net *.split)
20:35:35*MTRNord[m] quit (*.net *.split)
20:35:35*unclechu quit (*.net *.split)
20:35:35*r4vi quit (*.net *.split)
20:35:35*fowl quit (*.net *.split)
20:35:35*skelett quit (*.net *.split)
20:35:35*matlock quit (*.net *.split)
20:35:35*qwertfisch quit (*.net *.split)
20:35:35*ldlework quit (*.net *.split)
20:35:44*hecanjog joined #nim
20:35:44*livcd joined #nim
20:35:44*sagax joined #nim
20:35:44*abm joined #nim
20:35:44*lritter joined #nim
20:35:44*oculux joined #nim
20:35:44*kitech1 joined #nim
20:35:44*bung_ joined #nim
20:35:44*sentreen joined #nim
20:35:44*dv^_^ joined #nim
20:35:44*so joined #nim
20:35:44*disruptek joined #nim
20:35:44*mal`` joined #nim
20:35:44*voltist joined #nim
20:35:44*jxy joined #nim
20:35:53*Cadey joined #nim
20:35:53*jholland__ joined #nim
20:35:53*unclechu joined #nim
20:35:53*MTRNord[m] joined #nim
20:35:53*r4vi joined #nim
20:35:53*fowl joined #nim
20:35:53*skelett joined #nim
20:35:53*matlock joined #nim
20:35:53*qwertfisch joined #nim
20:35:53*ldlework joined #nim
20:36:10*zlick quit (*.net *.split)
20:36:10*arecaceae quit (*.net *.split)
20:36:10*tane quit (*.net *.split)
20:36:10*vicfred quit (*.net *.split)
20:36:11*go|dfish quit (*.net *.split)
20:36:11*FromDiscord quit (*.net *.split)
20:36:41*sendell quit (Ping timeout: 244 seconds)
20:36:47*k0mpjut0r quit (Ping timeout: 244 seconds)
20:37:12*MTRNord[m] quit (Ping timeout: 246 seconds)
20:37:12*neceve quit (Ping timeout: 244 seconds)
20:37:12*LyndsySimon quit (Ping timeout: 244 seconds)
20:37:12*npgm quit (Ping timeout: 244 seconds)
20:37:25*zlick joined #nim
20:37:25*arecaceae joined #nim
20:37:25*tane joined #nim
20:37:25*vicfred joined #nim
20:37:25*go|dfish joined #nim
20:37:25*FromDiscord joined #nim
20:37:25*wontruefree[m] quit (Ping timeout: 244 seconds)
20:37:25*dzamo[m] quit (Ping timeout: 244 seconds)
20:37:37*vesper11 joined #nim
20:37:38*Trustable quit (*.net *.split)
20:37:39*kenran quit (*.net *.split)
20:37:39*Jesin quit (*.net *.split)
20:37:39*Oddmonger quit (*.net *.split)
20:37:39*pangey quit (*.net *.split)
20:37:39*literal quit (*.net *.split)
20:37:39*dom96 quit (*.net *.split)
20:37:39*iwq quit (*.net *.split)
20:37:39*cornfeedhobo quit (*.net *.split)
20:37:39*gsingh93 quit (*.net *.split)
20:37:39*d10n quit (*.net *.split)
20:37:39*Araq quit (*.net *.split)
20:37:43*ee7[m] quit (Ping timeout: 244 seconds)
20:38:02*Lord_Nightmare joined #nim
20:38:06*blackbeard420 quit (*.net *.split)
20:38:06*tribly quit (*.net *.split)
20:38:06*l1x quit (*.net *.split)
20:38:06*hpyc9 quit (*.net *.split)
20:38:06*stever quit (*.net *.split)
20:38:06*beatmox- quit (*.net *.split)
20:38:06*leorize[m] quit (*.net *.split)
20:38:15*Trustable joined #nim
20:38:15*kenran joined #nim
20:38:15*Oddmonger joined #nim
20:38:15*Jesin joined #nim
20:38:15*pangey joined #nim
20:38:15*iwq joined #nim
20:38:15*literal joined #nim
20:38:15*dom96 joined #nim
20:38:15*cornfeedhobo joined #nim
20:38:15*gsingh93 joined #nim
20:38:15*d10n joined #nim
20:38:15*Araq joined #nim
20:38:26*dom96 quit (Excess Flood)
20:38:30*blackbeard420 joined #nim
20:38:30*tribly joined #nim
20:38:30*l1x joined #nim
20:38:30*hpyc9 joined #nim
20:38:30*stever joined #nim
20:38:30*beatmox- joined #nim
20:38:30*leorize[m] joined #nim
20:38:47*vicfred quit (Remote host closed the connection)
20:38:54*laqq3 quit (*.net *.split)
20:38:54*synthmeat quit (*.net *.split)
20:38:54*Ekho quit (*.net *.split)
20:38:54*CcxWrk quit (*.net *.split)
20:38:54*skrzyp1 quit (*.net *.split)
20:38:55*yumaikas quit (*.net *.split)
20:38:55*deepend quit (*.net *.split)
20:38:55*mutantturkey quit (*.net *.split)
20:38:57*r4vi quit (Ping timeout: 246 seconds)
20:38:57*matlock quit (Ping timeout: 246 seconds)
20:39:08*vicfred joined #nim
20:39:17*sirn joined #nim
20:39:26*dom96 joined #nim
20:39:26*dom96 quit (Changing host)
20:39:26*dom96 joined #nim
20:39:27*chemist69 quit (*.net *.split)
20:39:27*pbb quit (*.net *.split)
20:39:27*nerthus quit (*.net *.split)
20:39:27*surma quit (*.net *.split)
20:39:28*Yardanico quit (*.net *.split)
20:39:28*ehmry quit (*.net *.split)
20:39:28*sepplesWoona quit (*.net *.split)
20:39:28*msmorgan quit (*.net *.split)
20:39:28*rayman22201 quit (*.net *.split)
20:39:28*JStoker quit (*.net *.split)
20:39:35*so quit (Max SendQ exceeded)
20:39:36*laqq3 joined #nim
20:39:36*Ekho joined #nim
20:39:36*synthmeat joined #nim
20:39:36*skrzyp1 joined #nim
20:39:36*CcxWrk joined #nim
20:39:36*yumaikas joined #nim
20:39:36*deepend joined #nim
20:39:36*mutantturkey joined #nim
20:39:49*CcxWrk quit (Max SendQ exceeded)
20:39:49*Ekho quit (Max SendQ exceeded)
20:39:59*LyndsySimon joined #nim
20:40:19*d10n-work joined #nim
20:40:21*unclechu quit (Remote host closed the connection)
20:40:21*Zoom[m] quit (Remote host closed the connection)
20:40:21*oneark quit (Remote host closed the connection)
20:40:21*jackfly26[m] quit (Remote host closed the connection)
20:40:21*planetis[m] quit (Remote host closed the connection)
20:40:21*codic quit (Remote host closed the connection)
20:40:22*Ekho- joined #nim
20:40:24*CcxWrk_ joined #nim
20:40:25*CcxWrk_ is now known as CcxWrk
20:40:28*chemist69 joined #nim
20:40:28*pbb joined #nim
20:40:28*nerthus joined #nim
20:40:28*surma joined #nim
20:40:28*Yardanico joined #nim
20:40:28*ehmry joined #nim
20:40:28*sepplesWoona joined #nim
20:40:28*msmorgan joined #nim
20:40:28*rayman22201 joined #nim
20:40:28*JStoker joined #nim
20:40:39*def- quit (*.net *.split)
20:40:49*def- joined #nim
20:40:51*matti joined #nim
20:41:30*tyler569 quit (*.net *.split)
20:41:30*bozaloshtsh_ quit (*.net *.split)
20:41:30*ChanServ quit (*.net *.split)
20:41:59*tyler569 joined #nim
20:41:59*bozaloshtsh_ joined #nim
20:41:59*r4vi joined #nim
20:42:23*shodan45 quit (*.net *.split)
20:42:23*nickster quit (*.net *.split)
20:42:23*acidx quit (*.net *.split)
20:42:40*shodan45 joined #nim
20:42:40*nickster joined #nim
20:42:40*acidx joined #nim
20:42:52*arecaceae quit (Ping timeout: 246 seconds)
20:43:39*arecaceae joined #nim
20:44:04*npgm joined #nim
20:44:08*skrzyp1 quit (Ping timeout: 265 seconds)
20:44:14FromDiscordUptime - 2 days, 14 hours, and 26 minutes
20:44:15*msmorgan quit (Ping timeout: 274 seconds)
20:44:33*d10n-work quit (Ping timeout: 246 seconds)
20:44:53*msmorgan joined #nim
20:45:32*so joined #nim
20:46:27*skrzyp1 joined #nim
20:47:07*d10n-work joined #nim
20:47:36*wontruefree[m] joined #nim
20:47:42*matlock joined #nim
20:49:19*hecanjog quit (*.net *.split)
20:49:19*livcd quit (*.net *.split)
20:49:19*abm quit (*.net *.split)
20:49:20*lritter quit (*.net *.split)
20:49:20*sagax quit (*.net *.split)
20:49:20*oculux quit (*.net *.split)
20:49:20*kitech1 quit (*.net *.split)
20:49:20*bung_ quit (*.net *.split)
20:49:20*sentreen quit (*.net *.split)
20:49:20*dv^_^ quit (*.net *.split)
20:49:20*disruptek quit (*.net *.split)
20:49:20*mal`` quit (*.net *.split)
20:49:20*voltist quit (*.net *.split)
20:49:20*jxy quit (*.net *.split)
20:49:38FromDiscord<julcz> W
20:49:40*hoek joined #nim
20:50:13*hecanjog joined #nim
20:50:13*livcd joined #nim
20:50:13*sagax joined #nim
20:50:13*abm joined #nim
20:50:13*lritter joined #nim
20:50:13*oculux joined #nim
20:50:13*kitech1 joined #nim
20:50:13*bung_ joined #nim
20:50:13*sentreen joined #nim
20:50:13*dv^_^ joined #nim
20:50:13*disruptek joined #nim
20:50:13*mal`` joined #nim
20:50:13*voltist joined #nim
20:50:13*jxy joined #nim
20:51:12FromDiscord<julcz> How should I change the bottom oneliner to make it work? https://media.discordapp.net/attachments/371759389889003532/729439255507763280/Screenshot_20200705_224901.png
20:51:44FromDiscord<julcz> I'm new to this, learning Nim for 3 days now 😅
20:51:52Yardanicoone sec
20:52:50Yardanicowell first of all, if you just want the whole part of the float, you don't need strings, but for the sake of it - the problem is that $ here binds to the whole expression
20:52:54Yardaniconot just to sqrt(4.0)
20:53:20FromDiscord<Shucks> Guess I just made my first useful template 😄 https://github.com/Sann0/Nimem/blob/master/src/nimem.nim#L20
20:53:27*sz0 joined #nim
20:53:57Yardanico@julcz it'll work with this:
20:54:01Yardanicoecho ($sqrt(4.0)).split(".")[0]
20:54:15Yardanicobut really if you just want the whole part of a float, convert it to int or use formatFloat from strutils
20:54:29Yardanico!eval import math; echo sqrt(4.0).int
20:54:38Yardanico!eval import math; echo int sqrt(4.0)
20:54:49Yardanico!eval import math; echo int(sqrt 4.0)
20:54:54Yardanico(all of these mean the same)
20:55:28*solitudesf quit (Ping timeout: 244 seconds)
20:56:14FromDiscord<julcz> Thanks a lot, didn't expect such help 😃
20:56:31FromDiscord<julcz> > echo ($sqrt(4.0)).split(".")[0]↵@Yardanico[IRC]#0000 Feel kind of stupid now 😅
20:56:33Yardanicoit's about https://nim-lang.org/docs/manual.html#syntax-precedence
21:07:58FromDiscord<Elegant Beef> How does one get nimble to build using the ssl flag, i made the `nimble.nim.cfg` and it's still not working
21:08:24Yardanicoyou want "yoursourcefilename.nim.cfg"
21:08:28Yardanicoor "config.nims"
21:08:35Yardanicoor "yoursourcefilename.config.nims"
21:08:38Yardanicoin the same folder as the source file itself
21:08:53FromDiscord<Elegant Beef> Thanks
21:08:54Yardanicoit's not really related to nimble itself
21:09:00Yardanicoit's how nim does it in general
21:09:16FromDiscord<Elegant Beef> Yea i know, but the nimble trouble shooting says `src/nimble.nim.cf`
21:09:31FromDiscord<Elegant Beef> So i copied that instead of the nim compiler's docs
21:09:52FromDiscord<Elegant Beef> .cfg* obviously
21:14:52Yardanico"fish: “nim c -d:ssl -r "/home/dian/Pro…” terminated by signal SIGSEGV (Address boundary error)"
21:15:10*BitPuffin joined #nim
21:15:10*nerdrat[m] joined #nim
21:15:10*oneark joined #nim
21:15:10*watzon joined #nim
21:15:11*lnxw37d4 joined #nim
21:15:11*planetis[m] joined #nim
21:15:11*sendell joined #nim
21:15:11*GitterIntegratio joined #nim
21:15:11*unclechu joined #nim
21:15:11*codic joined #nim
21:15:11*neceve joined #nim
21:15:11*MTRNord[m] joined #nim
21:15:11*k0mpjut0r joined #nim
21:15:11*Zambyte[m] joined #nim
21:15:11*dzamo[m] joined #nim
21:15:17*slackytude[m] joined #nim
21:15:17*ee7[m] joined #nim
21:15:17*skrylar[m] joined #nim
21:15:17*xicheng[m] joined #nim
21:15:17*Zoom[m] joined #nim
21:15:46FromDiscord<Elegant Beef> Im refactoring code i wrote shortly after picking up nim, and this was before i learned of forward declaration so i had a variable to hold the procs i wanted
21:16:53*tane quit (Quit: Leaving)
21:19:46*kenran quit (Ping timeout: 260 seconds)
21:21:23Yardanicook found why it was crashing
21:21:24Yardanicomy mistake
21:21:41YardanicoI was calling newColonExpr with value as the variable I was assigning to
21:21:45Yardanicoalthough will report the crash
21:22:51Yardanico"Error: macro produced a cyclic tree"
21:22:56Yardanicowait wat
21:27:44Yardanicohttps://github.com/nim-lang/Nim/issues/14914 :P
21:27:46disbot➥ 3(low priority) compiler crash when using a cyclic tree in a quote do block ; snippet at 12https://play.nim-lang.org/#ix=2qYX
21:31:28*Ekho- is now known as Ekho
21:32:24Yardanicowell guess what, initial posthug nim lib is coming along nicely with some macro magic
21:33:09Yardanicomy ip btw, but it's okay :P
21:33:29FromDiscord<Elegant Beef> DDOS inbound
21:33:35Yardanicoyeah sure :D
21:33:37Yardanicobtw these are templates
21:33:41FromDiscord<Recruit_main707> John doe 😨
21:33:50YardanicoI used it from posthog docs
21:33:54Yardanicoand these templates are very simple
21:34:04Yardanicothey just call send with the kind of the event I'm sending
21:34:07Yardanicoe.g. for capture it's send(Capture, makeTableConstr(data))
21:34:13Yardanicoand makeTableConstr is the macro with magic
21:34:43Yardanicoit transforms that capture call into `%*`({"event": "testing", "distinct_id": "user:123", "properties": {"message": "hello test"}})
21:34:50YardanicoI mean the arguments
21:35:00Yardanicointo a call to json's %* macro to make a json node to send to the API
21:35:21Yardanicoand yes as you can see it handles camelCase -> snake_case too
21:40:40Yardanico+10 loc lol https://i.imgur.com/MEaIB1Y.png
21:41:15Yardanicomeanwhile posthog python lib has 6 .py files
21:41:43Yardanicoof course I don't do the main part all other libs do though
21:41:45Yardanicobatching of events
21:41:56Yardanicoso they'll be only sent after some timeout or when queue is full
21:50:52FromDiscord<Varriount> Ok, this is probably easy to fix - I've set up my windows laptop, installed Windows Build Tool, and LLVM. When I compile using Nim, I get ` unresolved external symbol nimAddInt referenced in function writeWindows__JO9bn8JE1R6MjKZqdvhBrWg`
21:51:08*zlick quit (Read error: Connection reset by peer)
21:51:14FromDiscord<Varriount> Anyone know what's up? I'm essentially trying to use LLVM with the Windows SDK headers.
21:57:50*vr0n joined #nim
22:00:03*zagani joined #nim
22:13:46*Trustable quit (Remote host closed the connection)
22:23:24federico3huh? why was existsDir deprecated?
22:23:39Yardanicobecause noun verb :P
22:23:55Yardanicowell yeah
22:24:02Yardanicosee https://github.com/nim-lang/Nim/pull/14732
22:24:03disbot➥ 6nep1: use `subjectVerb`, not `verbSubject`
22:24:05disbot➥ 6{.deprecated: [existsFile: fileExists].}
22:24:41Yardanicoand https://github.com/nim-lang/Nim/pull/14884\
22:24:41disbot➥ 6deprecate existsDir; use dirExists instead
22:33:30Yardanicosome progress on docs xd https://i.imgur.com/vvwAL5T.png
22:33:43Yardanicoalthough I don't know how much people except me will use the lib (probably 0, but that doesn't matter)
22:34:11FromDiscord<Elegant Beef> analytics is for nerds
22:34:17FromDiscord<Elegant Beef> I am nerd but not the right kind
22:34:21Yardaniconot really, this can be useful too
22:34:25Yardanicofor handling crashes even
22:35:17FromDiscord<Elegant Beef> Yea i know, but that implies i ever get software that far
22:35:24YardanicoI want posthog for my ircord
22:35:27Yardanicoand potentially for my other stuff
22:35:40Yardanicofor exceptions or some other events like admin triggering a command
22:36:59Yardanicoand btw I'm becoming a "modern guy"
22:37:10YardanicoI started using import std / [stdlib, modules, here]
22:37:16Yardanicoand also markdown blocks for nim code in docs
22:37:20Yardanicoand ##[ ]##
22:38:02FromDiscord<Elegant Beef> ah cool that std thing is nice
22:38:12*laqq3 quit (Ping timeout: 265 seconds)
22:38:26*zagani quit (Quit: Leaving)
22:39:46FromDiscordUptime - 2 days, 16 hours, and 21 minutes
22:41:08FromDiscord<Elegant Beef> Do yourself one better :D https://media.discordapp.net/attachments/371759389889003532/729466922911006733/unknown.png
22:41:16Yardanico4-space indents
22:41:20Yardanicono spaces before/after /
22:41:27FromDiscord<Elegant Beef> I mean it's a path
22:41:30FromDiscord<Elegant Beef> I dont think it matters
22:41:36Yardanicowell I just like it with spaces
22:41:54FromDiscord<Elegant Beef> also i use 8 space width indents(tabs), in C# so... fight me
22:41:58*endragor joined #nim
22:42:05FromDiscord<Elegant Beef> (edit) 'indents(tabs),' => 'indents(tabs)'
22:42:46FromDiscord<Elegant Beef> How does vscode collapse your import?
22:45:39FromDiscord<Elegant Beef> Yea i dont like that 😄
22:45:57YardanicoI don't use collapse function anyway
22:46:07disrupteknimions do it with spaces.
22:46:20FromDiscord<Elegant Beef> do what?
22:50:11*laqq3 joined #nim
22:56:55*endragor quit (Ping timeout: 246 seconds)
22:59:01disruptekman, i smell like a horse.
23:05:46FromDiscord<Elegant Beef> Time for your biannual bath?
23:06:33disrupteki just had one in august.
23:06:57FromDiscord<Elegant Beef> Ah you have annual baths
23:07:21disruptekno, you were right the first time.
23:08:22disruptekapparently, golden showers don't count.
23:08:41FromDiscord<Elegant Beef> Moreso when you get them from horeses
23:09:05disruptekwhere are you in canuckistan, beef?
23:12:20FromDiscord<Elegant Beef> Alberta
23:16:43*laqq3 quit (Remote host closed the connection)
23:17:06*laqq3 joined #nim
23:17:18FromDiscord<Elegant Beef> Why were you wondering?
23:24:28FromDiscord<Elegant Beef> Uh oh, i gave too much information, he's now border crossing saying "Im going to alaska" then going to my national parks yelling at people to "Go back to your country"
23:24:43FromDiscord<Elegant Beef> *The above joke is brought to you in part by, Americans*
23:25:17FromDiscord<exelotl> wtf is this conversation lol
23:25:24Yardanicousual disruptek's
23:25:54FromDiscord<Elegant Beef> Disruptek and I are terrible people to be near eachother, since we dont mind making aimless nonsensical jokes
23:27:07Yardanicoanyway "open-sourced" the startings of the lib https://github.com/Yardanico/posthog-nim
23:28:03FromDiscord<Elegant Beef> And i refactored/cleaned up my nim_rofi 😄
23:28:04FromDiscord<Elegant Beef> https://github.com/beef331/nim_rofi
23:28:20Yardanicoim offended by your code style
23:28:26Yardanicospaces BEFORE the colon
23:28:34Yardanicoor sometimes space before the colon but no space after the colon
23:28:37Yardanicorun nimpretty pls
23:28:55*chemist69 quit (Ping timeout: 272 seconds)
23:29:21FromDiscord<Elegant Beef> any of a : b was old code
23:29:28Yardanicobut yeah the code looks okayish
23:29:36Yardanicowhy use regex for handling html though :P
23:29:38*chemist69 joined #nim
23:29:50FromDiscord<Elegant Beef> Cause the index.html is broken
23:30:03Yardanicois it?
23:30:09Yardanicohow so
23:30:13FromDiscord<Elegant Beef> yea `<p ?>`
23:30:18FromDiscord<Elegant Beef> is the paragraph tag
23:30:26*krux02_ joined #nim
23:30:32FromDiscord<Elegant Beef> Or w/e i use in the regex
23:30:55Yardanicowell it's not broken
23:30:59Yardanicothat's totally allowed in HTML
23:31:08FromDiscord<Elegant Beef> The nim parse doesnt handle it
23:31:13FromDiscord<Elegant Beef> (edit) 'parse' => 'parser'
23:31:17Yardanicowere you using htmlparser or xmlparser?
23:31:33FromDiscord<Elegant Beef> Believe html
23:31:40Yardanicowell ill see tomorrow
23:31:52FromDiscord<Elegant Beef> Ill check later myself too
23:33:15*krux02 quit (Ping timeout: 256 seconds)
23:33:38*abm quit (Quit: Leaving)
23:33:38FromDiscord<Elegant Beef> I either couldnt parse it or navigate it properly
23:34:09FromGitter<bung87> have you tried fusion/htmlparser ?
23:34:17FromDiscord<Elegant Beef> No
23:34:26FromDiscord<Elegant Beef> Most of that code is like 5 months old
23:34:30FromDiscord<Elegant Beef> so i didnt try anything but std
23:35:08FromGitter<bung87> std is more strict
23:55:15*laqq3 quit (Ping timeout: 256 seconds)