<< 30-10-2021 >>

00:00:03*mahlon quit (*.net *.split)
00:00:03*neurocyte0132889 quit (*.net *.split)
00:00:03*tk quit (*.net *.split)
00:00:04*Mister_Magister quit (*.net *.split)
00:00:04*meowray quit (*.net *.split)
00:00:05*Yardanico_ quit (*.net *.split)
00:00:05*euantorano quit (*.net *.split)
00:00:05*syl quit (*.net *.split)
00:00:19*meowray joined #nim
00:00:19*Yardanico joined #nim
00:00:41*mahlon joined #nim
00:00:59*neurocyte0132889 joined #nim
00:01:06*euantorano joined #nim
00:01:37*neurocyte0132889 quit (Changing host)
00:01:37*neurocyte0132889 joined #nim
00:02:37*Mister_Magister joined #nim
00:02:37*syl joined #nim
00:02:41*tk joined #nim
00:04:06FromDiscord<geekrelief> On nim playground is there a way to import from github? I want to import a specific branch commit.
00:07:17FromDiscord<geekrelief> nevermind.. I thought there might be some hidden feature.
00:07:30*vicfred quit (Quit: Leaving)
00:09:18*meowray quit (Changing host)
00:09:18*meowray joined #nim
00:21:13FromDiscord<Ricky Spanish> Is there any nimble packages for embedding files into my binary and reading back the embedded bytes?
00:21:35FromDiscord<Elegantbeef> You dont need a package for that
00:21:46FromDiscord<Elegantbeef> `const yourData = staticRead("somefile")`
00:52:36FromDiscord<evoalg> I'm a noob trying to understand object and tuple types, and I can do: "type Test = tuple" or I can do "type Test = object" ... and in both can have eg "data: seq[int]" etc, so when I do "var test: Test" I can then do eg "test.data.add 3" and they seem exactly the same, and I read they are pretty much the same. When would I use one over the other?
00:53:22FromDiscord<Elegantbeef> Tuples allow you to unpack them and are not distinct
00:54:17FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3Dk1
00:54:33FromDiscord<Elegantbeef> Tuple definitions are just aliases for tuples, so they're not distinct types
00:55:04FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3Dk2
00:56:42FromDiscord<evoalg> oh thanks ... so "A = (int, int)" is another way of defining a tuple ... I didn't know that
00:56:54FromDiscord<Elegantbeef> It's not defining a tuple
00:56:59FromDiscord<Elegantbeef> It's an alias to `(int, int)`
00:57:21FromDiscord<Elegantbeef> Tuples are not considered type safe, if the fields match it's the other type
01:03:06FromDiscord<evoalg> ok that makes sense from what I read. I'm just trying to understand "var a: A = B((10, 20))". So instead of doing the usual "var a:A = (10, 20)" it's using B instead of A. I haven't see that double parentheses syntax before ... what is it?
01:03:35FromDiscord<Elegantbeef> It's just a type conversion of a tuple
01:03:45FromDiscord<Elegantbeef> `(10,20)` is a tuple
01:04:05FromDiscord<Elegantbeef> `B((10, 20)` converts it to `B`, but then it implictly converts to A on assignment
01:04:38FromDiscord<evoalg> ohhhh ok ... thanks for you help! I have to read up on type conversions.
01:05:31FromDiscord<evoalg> btw to paste short snippets of code on here like you do, are you using three back-ticks or something?
01:06:43FromDiscord<Elegantbeef> Yes
01:10:04FromDiscord<evoalg> Thank you, you've helped me a lot several times (we have be closer in time zone as you're always active when I am) ... thank you Elegantbeef
01:10:24FromDiscord<Elegantbeef> Eh i'm always around so that's probably not the case
01:10:33FromDiscord<Elegantbeef> No problem though, glad to help
01:11:45FromDiscord<evoalg> lol you must not sleep then hehe
01:12:08FromDiscord<Elegantbeef> Well i'm in Canada if you do want to play the timezone check
01:12:57FromDiscord<evoalg> oh I'm in New Zealand
01:13:30FromDiscord<Elegantbeef> See told you 😛
01:14:22FromDiscord<evoalg> You're right hehe ... I find Canadians very smart, you must have good schooling over there
01:14:58*neurocyte0132889 quit (Ping timeout: 268 seconds)
01:15:07FromDiscord<Elegantbeef> no comment
01:15:20FromDiscord<Elegantbeef> Let's just say i live in rural Canada so i see the opposite 😛
01:17:07FromDiscord<evoalg> hehe, oh but yea that could be a real drag
01:24:03*vicfred joined #nim
02:07:49FromDiscord<huantian> sent a code paste, see https://play.nim-lang.org/#ix=3Dkh
02:07:55FromDiscord<huantian> (edit) "https://play.nim-lang.org/#ix=3Dkh" => "https://play.nim-lang.org/#ix=3Dki"
02:08:40FromDiscord<huantian> that, makes sense
02:08:41FromDiscord<Elegantbeef> Of course you can do an alias for that range
02:08:42FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3Dkj
02:08:52FromDiscord<huantian> alias?
02:09:26FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=3Dkk
02:09:35FromDiscord<huantian> ah
02:43:12*arkurious quit (Quit: Leaving)
04:06:02*supakeen quit (Quit: WeeChat 3.3)
04:06:31*supakeen joined #nim
04:14:21*rockcavera quit (Remote host closed the connection)
04:18:48FromDiscord<evoalg> I had make sure I could declare a tuple in 5 different ways so that I could get it right in my brain before continuing with the tutorials: https://play.nim-lang.org/#ix=3DkS
05:31:22FromDiscord<evoalg> oh, "var test: (float, float) = (5.0, 5.0)" creates a tuple with a float's, but just doing the simple "var test = (5.0, 5.0)" (so the type is implied) I get a tuple with float64's ... will that break things for me later on or is it generally ok to do it like that? I don't know enough to know if the float64's will be automatically treated the same as floats everywhere?
05:41:41FromDiscord<Elegantbeef> those are float literals which default to `float` which is an alias to float64
05:41:58FromDiscord<Elegantbeef> if you want 32bit floats you can do `5.0f` or `5.0f32`
05:42:14FromDiscord<Elegantbeef> If you want to be explicit about 64bit you can do `5.0d or 5.0f64`
05:43:04FromDiscord<Rika> The d one I don’t think works
05:43:14FromDiscord<Gumber> `5.0f` = 64 bit float
05:43:24FromDiscord<Gumber> `5.0'f32` = 32 bit float
05:43:28FromDiscord<Elegantbeef> !eval echo 5.0f
05:43:30NimBot5.0
05:43:31FromDiscord<Gumber> or `5.0f32`
05:43:41FromDiscord<Elegantbeef> !eval echo typeof(5.0f)
05:43:41FromDiscord<Gumber> !eval echo sizeof(5.0f)
05:43:44NimBotfloat32
05:43:44NimBot4
05:43:53FromDiscord<Gumber> oh
05:44:01FromDiscord<Gumber> whyyyyyyyyyyyyyyyyy
05:44:31FromDiscord<Gumber> I guess f64 exists too but f defaulting to 32 is weired
05:44:36FromDiscord<Gumber> (edit) "weired" => "weird"
05:44:49FromDiscord<Elegantbeef> !eval echo typeof(5.0d)
05:44:49FromDiscord<Gumber> considering `float` defaults to 64 bits
05:44:51NimBotfloat64
05:45:00FromDiscord<Gumber> ugh
05:45:16FromDiscord<Gumber> seems very silly
05:48:00FromDiscord<Elegantbeef> Yea probably is, but atleast literals arent really often a problem
05:48:22FromDiscord<Elegantbeef> Since floats generally dont care in their operations iirc
05:48:52FromDiscord<Gumber> well it definitely matters in graphics programming
05:49:13FromDiscord<Gumber> and when you're doing financial calculations
05:51:06FromDiscord<Elegantbeef> Eh i think in most calculations converts to the bigger one, but idk not looking at the VM impl 😀
06:49:13*vicfred quit (Quit: Leaving)
07:04:33*nrds quit (Remote host closed the connection)
07:36:29FromDiscord<Bung> In reply to @Elegantbeef "Eh i think in": “VM impl”
07:41:30FromDiscord<Elegantbeef> What?
08:02:51FromDiscord<blashyrk> Hi, is the Nim forum set for manual approval of new users? I just made my first post but it's invisible since I'm "moderated" 😄
08:13:43*arkanoid quit (Ping timeout: 265 seconds)
08:19:37FromDiscord<Rika> Yes
08:20:24NimEventerNew thread by Benob: Arraymancer: dot/matmul equivalent for higher-dim tensors, see https://forum.nim-lang.org/t/8565
08:26:24NimEventerNew thread by Puruneko: The default value of an argument may take priority over the argument given at the time of the call, see https://forum.nim-lang.org/t/8566
08:36:25NimEventerNew thread by Seves: Asyncdispatch on android, see https://forum.nim-lang.org/t/8567
10:25:56FromDiscord<hmmm> boys how do I invert the matrix of a seq of seqs? I need to exchange rows with columns
10:27:17FromDiscord<hmmm> I think I should use dataframes but it's known I'm a lazy bum
10:31:24FromDiscord<Rika> manually
10:31:39FromDiscord<Rika> https://nim-lang.org/docs/system.html#swap%2CT%2CT
10:32:05FromDiscord<hmmm> jeesus
10:32:10FromDiscord<hmmm> this looks painful
10:34:12FromDiscord<Rika> doubt
10:34:24FromDiscord<Rika> prolly just two for loops and that swap proc
10:50:50FromDiscord<Imperatorn> Surely there is a transpose function somewhere, no?
10:57:34FromDiscord<haxscramper> no, unlikely
10:57:38FromDiscord<Imperatorn> Or take a peek into Neo I guess↵https://github.com/andreaferretti/neo
10:57:43FromDiscord<haxscramper> of course matrix library would have it, but not stdlib
11:01:31FromDiscord<evoalg> for this simple case, two for loops and t[i][j] = s[j][i] works for me
11:11:56FromDiscord<Rika> In reply to @Rika "prolly just two for": Yeah I eluded to that here
11:14:16FromDiscord<evoalg> ahh I suppose swap would only work on square "matrices"
11:31:29FromDiscord<hmmm> why round doesn't work the way I expect it to
11:31:34FromDiscord<hmmm> https://play.nim-lang.org/#ix=3DmD
11:32:28FromDiscord<hmmm> I hate floats
11:33:37FromDiscord<haxscramper> just use strformat
11:33:57FromDiscord<haxscramper> nobody should print raw floats anyway, compiler can't read your mind and figure out what precision you need
11:34:12FromDiscord<Rika> That’s just how rounding works for floats
11:34:16FromDiscord<hmmm> I guess I'll have to, but why float are so nasty ffs
11:34:27FromDiscord<haxscramper> because they are made this way
11:34:46FromDiscord<Rika> Because exponents and mantissas are represented in powers of two which doesn’t map cleanly for powers of ten
11:35:02FromDiscord<haxscramper> and you just happened to hit the wrong spot
11:36:11FromDiscord<Rika> Even if they were using powers of ten you would probably hit other bugs
11:36:15FromDiscord<Rika> Not rounding ones though
11:37:13FromDiscord<haxscramper> I think you would need to use base-10 computer for that to work
11:37:32FromDiscord<haxscramper> or not
11:37:42FromDiscord<Rika> Lol no need, just needs a lot of roundabout and expensive hardware
11:37:52FromDiscord<Rika> There are better solutions I guess
11:38:01FromDiscord<haxscramper> like using strformat
11:38:41FromDiscord<Rika> What other use cases does rounding have other than printing actually
11:39:14FromDiscord<hmmm> heeeeeeeeeeeey
11:39:19FromDiscord<hmmm> python does it correctly
11:39:24FromDiscord<hmmm> W H Y
11:40:07FromDiscord<Rika> It does because it internally uses string formatting when you print it
11:40:12FromDiscord<hmmm> oh
11:40:21FromDiscord<Rika> In nim it must be explicit
11:40:29FromDiscord<hmmm> I see
11:42:05FromDiscord<hmmm> well if python cheats we should cheat too, I like roundy numbers
11:43:08FromDiscord<haxscramper> 0.1 + 0.2↵(@hmmm)
11:43:10FromDiscord<Rika> It incurs a possibly significant cost in processing
11:43:10FromDiscord<haxscramper> try it
11:43:34FromDiscord<Rika> Ah the classic .1 + .2
11:43:35FromDiscord<haxscramper> sent a code paste, see https://play.nim-lang.org/#ix=3DmI
11:43:43FromDiscord<haxscramper> it just fails on different spots, probably they have some expensive heuristics
11:43:49FromDiscord<haxscramper> IIRC nim 1.6.0 uses dragonbox for floating as well
11:44:04FromDiscord<haxscramper> ah, no, this had to be enabled with `--previewRandomBullshit` degeneracy
11:44:18FromDiscord<haxscramper> `--previewFloatRoundTrip` I think
11:44:32FromDiscord<Rika> Haha
11:44:37FromDiscord<haxscramper> https://github.com/nim-lang/Nim/blob/version-1-6/changelogs/changelog_1_6_0.md#round-trip-float-to-string
11:44:39FromDiscord<Rika> -d:nimPreview
11:44:40FromDiscord<haxscramper> I hate this crap
11:44:41FromDiscord<Rika> Etc etc
11:44:44FromDiscord<Rika> Kinda weird
11:44:50FromDiscord<haxscramper> nobody will enable them anyway
11:45:07FromDiscord<haxscramper> `-d:nimLegacyMacrosCollapseSymChoice`
11:45:11FromDiscord<haxscramper> just kill me
11:45:14FromDiscord<haxscramper> who the hell needs this
11:45:23FromDiscord<haxscramper> can't you like make options for `treeRepr` maybe?
11:45:34FromDiscord<haxscramper> `collapsesymChoice: bool = true`
11:45:41FromDiscord<haxscramper> instead global project-wide configuration
11:45:47FromDiscord<xflywind> it was discussed and became a policy
11:46:03FromDiscord<xflywind> https://github.com/nim-lang/Nim/pull/18541
11:46:04FromDiscord<haxscramper> yes sure
11:46:18FromDiscord<haxscramper> does not mean that it makes sense to me
11:46:30FromDiscord<xflywind> https://github.com/nim-lang/Nim/pull/18479
11:46:35FromDiscord<xflywind> In reply to @haxscramper "does not mean that": yeah
11:46:55FromDiscord<haxscramper> like I can understand the reasoning
11:46:57FromDiscord<haxscramper> but let's face it
11:47:03FromDiscord<haxscramper> until it is a default nobody will use it
11:47:27FromDiscord<xflywind> and here https://github.com/nim-lang/Nim/pull/18711#discussion_r695650857
11:47:33FromDiscord<haxscramper> people are wary of preview/experimental things
11:48:48FromDiscord<haxscramper> also adds another dimension to matrix tensting
11:48:48FromDiscord<haxscramper> with/without "random preview"↵with/without "another language dialect"
11:48:54FromDiscord<Rika> Don’t we already have {.experimental anyway
11:48:59FromDiscord<haxscramper> `treeRepr` for nim node is very limited anyway
11:49:21FromDiscord<haxscramper> `{.experimental`, `--experimental`, `-d:nimPreview`, `-d:nimLegacy`↵(@Rika)
11:49:26FromDiscord<Rika> Jesus
11:49:29FromDiscord<Rika> Why again
11:49:49FromDiscord<haxscramper> who knows
11:51:14FromDiscord<haxscramper> preview is guaratneed to be enabled later
11:51:35FromDiscord<haxscramper> so you can treat it as 1.6.2 features that for some reason got put in the 1.6.0 changelog
11:51:43FromDiscord<haxscramper> people who want to preview things use devel anyway
11:52:06FromDiscord<Rika> Good point
11:52:12FromDiscord<haxscramper> "nimLegacy" can be treated as unwillingness to add more arguments to preserve older behaviour
11:52:14FromDiscord<Rika> Most people on stable are there for stable shit…
11:52:35FromDiscord<haxscramper> because adding arguments to `treeRepr` will make it a liability
11:52:52FromDiscord<Rika> I can somewhat understand the legacy switch, having more arguments to use new behaviour can be annoying and cumbersome
11:52:58FromDiscord<Rika> I’m the future
11:53:00FromDiscord<haxscramper> this one I don't understand
11:53:01FromDiscord<haxscramper> klike
11:53:02FromDiscord<haxscramper> sent a long message, see http://ix.io/3DmL
11:53:03FromDiscord<haxscramper> like
11:53:05FromDiscord<haxscramper> for fuck's sake
11:53:07FromDiscord<haxscramper> really
11:53:08FromDiscord<Rika> I’m -> in
11:53:15FromDiscord<haxscramper> I need to preview `delete` to work correctly?\>
11:53:56FromDiscord<Rika> For the strict delete one it should have been new behaviour and switch for old I guess
11:54:09FromDiscord<haxscramper> this deletes
11:54:10FromDiscord<haxscramper> sent a code paste, see https://play.nim-lang.org/#ix=3DmM
11:54:14FromDiscord<haxscramper> I mean sure 123123 should delete 5
11:54:18FromDiscord<haxscramper> makes sense
11:54:19FromDiscord<haxscramper> right
11:55:46FromDiscord<haxscramper> `treeRepr` should have tons of flags anyway
12:04:41FromDiscord<hmmm> "your code might depend on this quirky behaviour"
12:04:55FromDiscord<hmmm> well we must break their code then :3
12:05:08FromDiscord<tandy> `if 10000 <= number <= 30000:` is this possible in nim like in python?
12:05:24FromDiscord<Rika> Not without a macro
12:05:27FromDiscord<Rika> Afaik
12:05:57FromDiscord<tandy> hnmm
12:06:02*supakeen quit (Quit: WeeChat 3.3)
12:06:33*supakeen joined #nim
12:12:10FromDiscord<tandy> image.png https://media.discordapp.net/attachments/371759389889003532/903979593017466910/image.png
12:13:08FromDiscord<tandy> im using this code to check im clicking within the bounds of a tictactoe box, and placing a cross -↵is there a more efficient way to do bound checks? this is one row for tictactoe, but im imagining if im trying to do checkers this could get massive fast
12:15:39FromDiscord<tandy> image.png https://media.discordapp.net/attachments/371759389889003532/903980467542442034/image.png
12:15:50FromDiscord<tandy> this works, i thought itd slow down a lot but its okay
12:47:24FromDiscord<ajusa> Are there any packages to stream the contents of a tar.gz? zippy dumps the entire thing to memory
12:51:46FromDiscord<ajusa> In reply to @ajusa "Are there any packages": Looks like dom has untar, I'll use that
12:58:24FromDiscord<hotdog> In reply to @tandy "im using this code": Modulo the position to get grid coords
13:27:26*arkurious joined #nim
13:46:34FromDiscord<tandy> wat do u mean by this↵(@hotdog)
14:06:49FromDiscord<pointystick> tandy, if your board squares are 32 pixels each, you can divide each mouse x,y by 32 to get the array index value (0, 1, 2 - any other value is presumably out of bounds). It looks like you'll need to subtract 16 first as you have an offset - so something like "var gridCoords = ((pos[0] - 16) div 32, (pos[1] - 16) div 32)"
14:10:12FromDiscord<tandy> oh this sounds kinda mad, il see if it works↵(@pointystick)
14:12:19FromDiscord<pointystick> You can think of it as translating coordinate systems (from pixel/screen coordinates to tile coordinates, or whatever). You start with the logic "each square takes blah pixels... so it's mapping from 0 ..< blah into 0 ..< numberOfXValues. But before doing anything else, you have to translate so the screen pos starts at 0, 0 or things will mess (hence the subtraction to move from 16 .. 112 into 0 .. 96
14:13:18FromDiscord<pointystick> (edit) "pixels..." => "pixels..."" | "mess" => "get messy" | "96" => "96)"
14:16:38FromDiscord<acek7> hows the nim community?
14:17:59FromDiscord<tandy> damn this is kinda amazing, thank you so much!↵(@pointystick)
14:18:13FromDiscord<Rika> In reply to @acek7 "hows the nim community?": seems fine
14:18:20FromDiscord<tandy> now i just need to figure out why im getting an illegal storage error
14:20:05FromDiscord<Rika> full error please, maybe we can help
14:27:27FromDiscord<tandy> il try, but it just says sigsegv↵(@Rika)
14:27:53FromDiscord<Rika> ah, run without -d:release or danger it should give you a stacktrace
14:29:51FromDiscord<tandy> sent a code paste, see https://play.nim-lang.org/#ix=3Dnq
14:29:55FromDiscord<tandy> ahh value error
14:30:04*Vladar joined #nim
14:39:49FromDiscord<tandy> fixed \:))
14:46:42*Vladar quit (Remote host closed the connection)
15:09:36*neurocyte0132889 joined #nim
15:09:36*neurocyte0132889 quit (Changing host)
15:09:36*neurocyte0132889 joined #nim
15:11:36*rockcavera joined #nim
15:11:36*rockcavera quit (Changing host)
15:11:36*rockcavera joined #nim
15:29:42FromDiscord<IsaacPaul> sent a code paste, see https://play.nim-lang.org/#ix=3DnQ
15:33:14FromDiscord<IsaacPaul> Just a suggestion.. Comment what your code is doing as you're writing it, and when it works and when you have time then turn those comments into procedures. So instead of reading comments you're reading the names of procedures/functions.
16:20:21FromDiscord<tandy> i see, yeah the current code is a lot more sane, thank you for the example too, i just implemented a proc like that↵(@IsaacPaul)
16:20:47FromDiscord<tandy> yea i try to do this but when ur working on a project with so many moving parts i seem to forget to lol↵(@IsaacPaul)
16:21:16FromDiscord<IsaacPaul> Trueee
16:31:17*sagax quit (Ping timeout: 264 seconds)
16:46:01*sagax joined #nim
17:06:45FromDiscord<Koldran> Hello, I am new to Nim and would like to find a library like playSound in python in order to play an mp3 file via code. So I looked a bit on the internet but I didn't find much. I have tried libraries like Nimbass but like I said I'm new and don't know how to use it. Does anyone know of a library?
17:52:13FromDiscord<impl Nickname for Dou {}> sent a code paste, see https://play.nim-lang.org/#ix=3Dor
17:54:09FromDiscord<Solitude> you need to import tables in module where error occurs
17:56:22FromDiscord<impl Nickname for Dou {}> I am stupid thank you so much
18:01:43FromDiscord<geekrelief> In reply to @Koldran "Hello, I am new": Have you checked out this? https://github.com/yglukhov/sound There's also the sdl bindings https://github.com/nim-lang/sdl2 which I assume has audio playback.
18:02:25FromDiscord<geekrelief> I haven't tried either though.
18:27:54NimEventerNew thread by SunnyCorleone: Nested Tables, see https://forum.nim-lang.org/t/8568
18:35:49*Vladar joined #nim
19:05:54*vicfred joined #nim
19:08:19FromDiscord<Schelz> Hi, fast question is c function calling in nim the same for cpp ?
19:10:05FromDiscord<Schelz> And if anyone know how to get imgui for nim working
19:18:19FromDiscord<haxscramper> you mean calling convention? Yes, it is a `{.cdecl.}` in both cases
19:25:44FromDiscord<Schelz> Yeah like calling void or other fuctions from a cpp file
19:30:47FromDiscord<Goat> Any good tutorials on Nim's db modules?
21:46:39NimEventerNew thread by Didlybom: Plotting library, see https://forum.nim-lang.org/t/8569
22:23:21*krux02 joined #nim
22:32:15FromDiscord<retkid> @treeform https://media.discordapp.net/attachments/371759389889003532/904135637635051540/unknown.png
22:32:20FromDiscord<retkid> this should work?
22:32:40FromDiscord<retkid> In reply to @Goat "Any good tutorials on": its pretty straight forward just read about sql
22:58:51*cjkim joined #nim
22:59:02cjkimHowdy nimions
23:04:13cjkimWhat advantages does Nim have over Rust in terms of concurrency?
23:05:18cjkimDear GOD/GODS and/or anyone else who can HELP ME (e.g. MEMBERS OF SUPER-INTELLIGENT ALIEN CIVILIZATIONS):
23:05:18cjkimThe next time I wake up, please change my physical form to that of FINN MCMILLAN formerly of SOUTH NEW BRIGHTON at 8 YEARS OLD and keep it that way FOREVER.
23:05:19cjkimI am so sick of this chubby Asian man body!
23:05:19cjkimThank you!
23:05:20cjkim- CHAUL JHIN KIM (aka. A DESPERATE SOUL)
23:05:20*cjkim left #nim (#nim)
23:44:06FromDiscord<sealmove> Hello, i am looking at 1.6.0 release notes. What are private imports?
23:45:35FromDiscord<geekrelief> When you import a module everything marked with the export marker `` is imported. With `{.all.}` everything is imported except for the modules dependencies.
23:46:47FromDiscord<sealmove> so the new thing is the `{.all.}` pragma?
23:46:55FromDiscord<exelotl> I'm surprised that that was added lol, but I guess it makes sense as a "trust me, I know what I'm doing" feature
23:47:17FromDiscord<sealmove> or a way to segment your modules?
23:47:30FromDiscord<geekrelief> In reply to @exelotl "I'm surprised that that": I used it immediately when it came out to debug a nim module. 🙂
23:47:44FromDiscord<sealmove> ah right it could help when debugging
23:48:44FromDiscord<sealmove> ah in the release notes if you scroll, it explains the new features
23:48:50FromDiscord<geekrelief> yes 🙂