<< 05-03-2023 >>

00:05:52FromDiscord<Hourglass [She/Her]> How does static linking work? Never really understood it
00:07:19FromDiscord<jtv> Well, do you understand how dynamic linking works?? Dynamic linking is the complicated bit
00:08:23FromDiscord<Hourglass [She/Her]> In a basic kind of way, all i really know is that a shared library just contains functions and stuff that a program can use
00:08:33FromDiscord<jtv> W/ dynamic linking you have potentially many object files and the objects in each might need to move around in memory. In static linking crap is all in one object file and nothing needs to move around
00:09:11FromDiscord<Hourglass [She/Her]> Can you statically link a dynamic library to your programm
00:09:12FromDiscord<Hourglass [She/Her]> ?
00:09:20FromDiscord<jtv> Yeah sure
00:10:02FromDiscord<Hourglass [She/Her]> That's cool then
00:10:10FromDiscord<Hourglass [She/Her]> Thanks for the short explanation!
00:10:21FromDiscord<jtv> No problem
00:11:17Amun-Rahmm
00:12:34Amun-Rayou can't directly link dynamic library statically
00:13:39FromDiscord<Rika> If all you have is the blob that’s the case
00:13:42Amun-Rastatic libraries are usually an ar archives containing object files that are linked like "normal" object
00:13:44FromDiscord<jtv> Well, depends on the format
00:14:25FromDiscord<jtv> Right, usually it's not done that way, but it can be done
00:14:48Amun-Rait's doable but it's quite complicated
00:14:54FromDiscord<jtv> Yup
00:15:28FromDiscord<jtv> Have built tooling to do it back in the day
00:25:18FromDiscord<mk-fg> Why does Nim's open() has either fmReadWrite with O_CREAT | O_TRUNC or fmReadWriteExisting without either, but not a mode where you can open/create rw file without nuking its contents?
00:26:39FromDiscord<mk-fg> Wondering if maybe there's a reason why it might be considered bad and was deliberately left out or something
00:26:43FromDiscord<jtv> Don't understand. fmReadWriteExisting opens r/w and doesn't nuke the contents
00:26:57FromDiscord<mk-fg> But it doesn't create file, gives error instead
00:27:33FromDiscord<mk-fg> I want to open-or-create file for read/update, basically
00:28:29FromDiscord<jtv> Sure, yes. I don't know why they didn't provide that option, I think it's cool they tried to simplify the traditional posix interface for fopen() which has always been arcane
00:29:04FromDiscord<jtv> You can just do things directly w/ the posix module if you really want
00:29:48FromDiscord<mk-fg> Yeah, will do that I guess, maybe just an oversight I guess
00:30:00FromDiscord<mk-fg> (edit) "that I guess," => "that,"
00:31:45FromDiscord<mk-fg> I'd probably call fmReadWrite a fmReadWriteTrunc to make it clear that contents will be truncated, and have fmReadWrite to be O_CREAT | O_RDWR, so maybe it's also an unfortunate historical naming that's a bit late to change now
00:32:32FromDiscord<I have 50GB of nothing on my PC> what is the pragma to import everything, inlucidng private symbols?
00:32:48FromDiscord<jtv> {.all.}
00:33:42*Batzy joined #nim
00:33:58FromDiscord<I have 50GB of nothing on my PC> ty
00:34:08FromDiscord<jtv> Yeah that'd definitely be an improvement, and I doubt they'd change the current flag names, but I'll bet if you add a flag in a PR they'd take it
00:38:31arkanoidtrying to get what in C is bitfield "enumv1 | enumv2": "bitops.bitor(enumv1.cint, enumv2.cint)" works but "{enumv1.cint, enumv2.cint}" does not work. What's the difference?
00:41:00FromDiscord<Elegantbeef> A nim bitset is not an integer in nim
00:41:21FromDiscord<Elegantbeef> A bitset in Nim turns on the bit of the index the value represents
00:41:52arkanoidElegantBeef, but here https://nim-lang.org/docs/tut1.html#sets-bit-fields the example casts set[MyFlag] to cint
00:42:02FromDiscord<Elegantbeef> So if you have a `set[range[0..8]]` and do `mySet.incl 8` it set's the 8 bit true
00:42:11FromDiscord<mk-fg> In reply to @jtv "Yeah that'd definitely be": Looking into how to make a PR for this, I think the actual reason is that it's libc's fopen() not linux' open() under the hood, where fmReadWrite = "w+", and there's no O_CREAT | O_RDWR mode - <https://gist.github.com/mk-fg/c63b34169f0efaf07831814b0200309e> - oh well, posix it is :)
00:42:32FromDiscord<Elegantbeef> What values have you given to the enum fields?
00:43:11arkanoidwait a sec. play.nim is down
00:43:56arkanoidElegantbeef: https://termbin.com/tijy8
00:44:13FromDiscord<Elegantbeef> Yea there is your problem
00:44:42arkanoidset for flags does not work with enum with holes?
00:45:01FromDiscord<Elegantbeef> It works with them but it only works on an enum with the range of uint16high
00:46:20arkanoidmmm, it's one of those pesky rules "should be enough for everyone", right?
00:46:34FromDiscord<Elegantbeef> Less that and more that it's 8kb of memory
00:47:15FromDiscord<Elegantbeef> Nim bitsets are static sized
00:48:15FromDiscord<Elegantbeef> Generally at larger sizes you'r probably best with a sparse set or similar
00:48:37arkanoidI'll stick with bitops.or for this
00:48:54arkanoidI'm interfacing with C
00:48:57FromDiscord<Elegantbeef> You do not even need bitops unless you want to be more clear 😄
00:49:17FromDiscord<Elegantbeef> I know you're interfacing with C I was just explaining why the limitation exists
00:50:19arkanoidyou're right, it works even with just cast[Gstmessagetype](GstMessageError.cint or GstMessageEOS.cint)
00:50:56FromDiscord<Elegantbeef> I'd probably just implement a `or` procedure for your enum type
00:51:43arkanoidalso this works: (GstMessageError.cint or GstMessageEOS.cint).Gstmessagetype, got warn for enum with holes, but I got it. Yeah custom proc is cleaner
00:53:09FromDiscord<etra> sent a code paste, see https://paste.rs/C4l
00:53:13FromDiscord<etra> (edit) "https://play.nim-lang.org/#ix=4pXw" => "https://play.nim-lang.org/#ix=4pXv"
00:54:15FromDiscord<Elegantbeef> Best way to check is to try
00:55:46FromDiscord<etra> yeah, I tried it but I'm getting the Error return from the SDK, which I don't know if I'm doing something wrong or the SDK is simply returning me something incorrect, because I previously checked that the API was supported by my camera (?
00:56:04FromDiscord<Elegantbeef> I mean look at the generated code
01:02:03FromDiscord<etra> ok apparently it does `typedef N_CDECL_PTR(tyEnum_Result9ahU9a8e2H9chXxR2Ogd6LnRw, tyProcS79bZniloqkCAlleU0J38fA) (NI camera_handle, NI api_code, NI api_param, ...);`
01:14:40FromDiscord<etra> lol, despite get_api returning me that the camera supports the api, when I try to do something with it it says error: api_notfound :crypalm: https://media.discordapp.net/attachments/371759389889003532/1081746568560005130/image.png
01:14:41FromDiscord<etra> nice sdk fuji
01:15:08FromDiscord<etra> (edit) "get_api" => "get_apis"
02:35:38*azimut quit (Quit: ZNC - https://znc.in)
02:36:02*azimut joined #nim
02:54:10arkanoidmmm, nimble manual says that arguments after -- are passed to the running program, but this is not working to me
02:55:05arkanoidif I do "nimble run -- --foo=42" argument is not passed, but if I run the resultin binary with "./myprog --foo=42" it works
03:20:04arkanoidI've found out the reason, nimble modifies kv args separator from original to ':'
03:20:29arkanoidso "nimble -- --foo=42" become parameter "--foo:42" for some reason
03:35:41*ltriant joined #nim
03:40:06*ltriant quit (Ping timeout: 255 seconds)
03:41:06FromDiscord<ringabout> cycles in the compiler https://media.discordapp.net/attachments/371759389889003532/1081783417517113424/image.png
03:54:04FromDiscord<ShalokShalom> In reply to @etra "lol, despite get_apis returning": Is this Comic Sans? 😄
03:54:37FromDiscord<etra> In reply to @ShalokShalom "Is this Comic Sans?": Comic mono... yeah :p
03:54:41FromDiscord<etra> I like it, don't ask me why
03:55:48FromDiscord<ShalokShalom> I dare not 😄
03:55:53FromDiscord<ShalokShalom> It looks kinda cute
03:56:02FromDiscord<ShalokShalom> You could add ligatures 😅
04:04:49FromDiscord<etra> I'm not fond of ligatures to be honest
04:24:28*arkurious quit (Quit: Leaving)
04:35:53*azimut quit (Ping timeout: 255 seconds)
04:39:50*azimut joined #nim
04:55:28*jmdaemon quit (Ping timeout: 248 seconds)
05:04:26*jmdaemon joined #nim
05:09:20*jmdaemon quit (Ping timeout: 248 seconds)
05:19:46*jmdaemon joined #nim
05:24:48*jmdaemon quit (Ping timeout: 248 seconds)
05:38:01*derpydoo quit (Quit: derpydoo)
05:52:56*derpydoo joined #nim
06:11:57NimEventerNew thread by Lite3000: Can I add Procs to Enums in Nim like in Python or Rust?, see https://forum.nim-lang.org/t/9967
06:30:04FromDiscord<amadan> Wonder how hard it would be to add live reloading of forum posts 🤔 ↵Like if someone comments while you are writing, it shows the new comment↵Keep writing out answers only to realise someone was faster once I've posted 😄
06:49:24*tiorock joined #nim
06:49:24*tiorock quit (Changing host)
06:49:24*tiorock joined #nim
06:49:24*rockcavera is now known as Guest4209
06:49:24*Guest4209 quit (Killed (tungsten.libera.chat (Nickname regained by services)))
06:49:25*tiorock is now known as rockcavera
07:05:14FromDiscord<Rika> Each connected client would now need a web socket, not that that would be a problem
08:32:20FromDiscord<I have 50GB of nothing on my PC> there are alternatives to websockets
08:33:05FromDiscord<Rika> Well there would need to be some sort of either live connection or polling
08:42:20*Guest9 joined #nim
08:44:34*Guest9 quit (Client Quit)
08:51:52NimEventerNew thread by Phase2: Cannot get library demos running due to linker errors, see https://forum.nim-lang.org/t/9968
08:53:43NimEventerNew post on r/nim by Linguistic-mystic: Can't compile "hello world" on Windows, see https://reddit.com/r/nim/comments/11is9ki/cant_compile_hello_world_on_windows/
08:53:45FromDiscord<Phil> Errr... assuming I don't want to screw over folks using 1.0.6 since `ndb` supported them before
08:54:09FromDiscord<Phil> What did nim `1.0.6` use instead of commandLineParams?
08:54:45FromDiscord<Phil> sent a code paste, see https://play.nim-lang.org/#ix=4pZ1
08:56:26FromDiscord<Phil> (edit) "https://play.nim-lang.org/#ix=4pZ1" => "https://play.nim-lang.org/#ix=4pZ2"
08:56:48FromDiscord<Phil> nimble version would be `nimble v0.11.0 compiled at 2020-01-23 17:15:42`
08:58:41*azimut quit (Ping timeout: 255 seconds)
09:01:05FromDiscord<Phil> Turns out that is irrelevant, I will have to screw them over because the test-suite demands enumerate
09:01:17FromDiscord<Phil> And I refuse to live without it, and 1.0.6 doesn't have it
09:06:59FromDiscord<I have 50GB of nothing on my PC> isn't it jsut a macro you could copy?
09:10:18FromDiscord<Phil> Not an amount of effort I'm willing to invest at this moment.↵I mean, the main selling point of lowdb over ndb currently either way is the nim 2.0 compatibility
09:10:50FromDiscord<Phil> In the future it might get added async postgres capabilities but imo it's reasonable to expect you to be a bit further in your nim version than 1.0.6 for that
09:11:30FromDiscord<Phil> So in that scenario you can just use ndb
09:14:48*Notxor joined #nim
09:24:27FromDiscord<fabricio> I crashed the compiler https://media.discordapp.net/attachments/371759389889003532/1081869828224196618/t.nim https://media.discordapp.net/attachments/371759389889003532/1081869828513611914/message.txt
09:27:04FromDiscord<Elegantbeef> I'd suggest moving the `static` int to the generic parameter list instead, but idk
09:27:11FromDiscord<Elegantbeef> These complex static types tend to explode
09:27:29FromDiscord<fabricio> tried, couldn't use them as values inside the function's body
09:28:26FromDiscord<fabricio> maybe there is a way to extract values from `typedesc`s
09:29:10FromDiscord<Elegantbeef> There are
09:30:23FromDiscord<Elegantbeef> Can you provide the code that instantiates the proc?
09:34:23FromDiscord<fabricio> that's the entire code
09:34:37FromDiscord<fabricio> the last line calls the function
09:35:17FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4pZ9
09:35:59FromDiscord<Elegantbeef> Yea sorry discord hid the last line
09:36:03FromDiscord<Elegantbeef> Literally unusable 😄
09:42:20FromDiscord<fabricio> it works thanks
10:05:39FromDiscord<I have 50GB of nothing on my PC> same on stable
10:05:40FromDiscord<I have 50GB of nothing on my PC> sent a code paste, see https://play.nim-lang.org/#ix=4pZf
10:05:56FromDiscord<I have 50GB of nothing on my PC> nvm im stupid
10:29:16*ltriant joined #nim
10:31:13FromDiscord<I have 50GB of nothing on my PC> though a user error should probably not end up in an assertion error, I guess
10:31:28FromDiscord<I have 50GB of nothing on my PC> it looked like an internal error at first glance
11:28:32*derpydoo quit (Ping timeout: 248 seconds)
12:54:55FromDiscord<I have 50GB of nothing on my PC> does "project" setting from vscode nimsaem extension work for other people
12:55:10FromDiscord<I have 50GB of nothing on my PC> setting it to the proper value simply results in "nim not found in path" (it's there)
12:58:30FromDiscord<Phil> What's the quickstart version for using `nimble develop` ?↵I'm aware you should be doing `nimble develop -g <packagename>` while in the project that you want to make globally accessible as a package, but that does not appear to work.↵↵I have a package called `owlling` I develop locally, I run `nimble develop -g owlling` in `~/dev/owlling` (the project dir) and then in my playground project I try to compile that consists of solely `impo
12:59:55FromDiscord<I have 50GB of nothing on my PC> also `"nim.provider": "lsp"`, but "Nimsuggest initialized for ..." in lower right corner
13:01:06FromDiscord<Phil> sent a code paste, see https://paste.rs/iH2
13:02:35FromDiscord<I have 50GB of nothing on my PC> @Phil if you're not using "nim.project", then it's going to run an instance of nimsuggest for each .nim or .nims file you open
13:02:49FromDiscord<I have 50GB of nothing on my PC> which makes my computer unusable
13:03:30FromDiscord<Phil> I don't really have any experience any other way with it, tbh I only started using nimsuggest like a month or so ago, before I was just acting entirely based on the compiler
13:04:01FromDiscord<Phil> I can't say I find nimsuggest massively helpful either way with its current performance
13:43:37*junaid_ joined #nim
13:50:55FromDiscord<pietroppeter> Probably already shared, just ran into it on fosstodon, a nice video intro to Nim by exercism (they also mention they use Nim internally): https://www.youtube.com/watch?v=rYDRCNFtRq0
13:53:06FromDiscord<Hourglass [She/Her]> I'm gonna have to make a small rewrite of Nimberite that doesn't have a plugin system npw
13:53:08FromDiscord<Hourglass [She/Her]> Now
13:53:20FromDiscord<Hourglass [She/Her]> That's gonna be a bit annoying
14:00:30FromDiscord<jmgomez> You guys dont use copilot?
14:00:57FromDiscord<Phil> I am as of now not convinced of it being helpful due to me needing to still check the syntax of what it writes
14:01:39*azimut joined #nim
14:02:09FromDiscord<jmgomez> it doesnt get the syntax wrong only on a very rare occasions
14:04:12FromDiscord<ShalokShalom> It has probably improved based on the feedback it got the last months
14:04:48FromDiscord<ShalokShalom> Telemetry is on by default for VSCode, and I dont know, if you can opt out for Copilot even
14:09:56FromDiscord<Hourglass [She/Her]> In reply to @jmgomez "You guys dont use": Nope
14:12:47FromDiscord<jmgomez> IMO it improves the Nim dev experience a lot. It understands Nim macro pretty well
14:13:30FromDiscord<jmgomez> Nodes, DSLs etc
14:34:04FromDiscord<Phil> Is there some way from which I can get all ancestor-classes of an object?
14:45:01FromDiscord<jmgomez> In reply to @Isofruit "Is there some way": getImpl?
14:45:12FromDiscord<jmgomez> needs to be a symbol though
14:52:06FromDiscord<jtv> In reply to @mk-fg "Looking into how to": open() is posix as well, as are those flags. And you can then use fdopen() to convert into a FILE object if they're using FILE objects internally.
15:02:04FromDiscord<Nilts> The `-d:release` flag is breaking my code, how would i debug it?
15:07:52FromDiscord<jtv> Are all of the symbols stripped w/ -d:release? Cause if not, I'd say a debugger is your best bet.
15:08:00FromDiscord<jtv> Otherwise, it's going to be tons of echos
15:08:38FromDiscord<Nilts> In reply to @jtv "Are all of the": What debugger, i am using nim js 1.6.10
15:47:16FromDiscord<jtv> IDK I have never tried to debug in the javascript backend. I only ever use the native debugging option
15:47:33FromDiscord<jtv> Which I assume wouldn't work for js, but IDK
16:08:43FromDiscord<jmgomez> last time I checked werent no maps, I think some work has been done in that direction recently. You can debug the generated js
16:10:32*arkurious joined #nim
16:13:57FromDiscord<Nilts> I am trying, and the call is just like never called, it is so weired
16:14:02FromDiscord<Nilts> (edit) "weired" => "weird"
16:35:37*kenran joined #nim
16:53:11*kenran quit (Remote host closed the connection)
17:20:16*junaid_ quit (Remote host closed the connection)
17:26:05FromDiscord<Hourglass [She/Her]> You need to use nim devel iirc, make sure source map generation is on and you should be able to use the chrome debugger? Haven't used it myself though so you're on your own there
17:40:18FromDiscord<Nilts> using the chrome debugger, things are just not getting called
17:42:53FromDiscord<Nilts> hmmm
17:55:22*junaid_ joined #nim
18:04:03FromDiscord<ShalokShalom> In reply to @jmgomez "IMO it improves the": Do you use it in VSCode?
18:04:30FromDiscord<ShalokShalom> I had seen implementations for NeoVim, even considerations with Helix. I guess there are more?
18:29:14FromDiscord<Nilts> Ok, i found my issue with chrome debugger, I forgot that karax does not update for certain data types, and i will have to call redraw myself.
18:29:23FromDiscord<Nilts> (edit) "with" => "using"
18:49:10NimEventerNew thread by mantielero: Iterators composition, see https://forum.nim-lang.org/t/9969
18:55:49FromDiscord<huantian> Elegantbeef\: it’s your time to shine
19:00:55FromDiscord<Iliketwertles> just a little bit confused here
19:01:04FromDiscord<Iliketwertles> sent a code paste, see https://play.nim-lang.org/#ix=4q25
19:01:55FromDiscord<Iliketwertles> when ran like this ↵(its called owo)↵`pacman -Q | owo` for example, it waits till the command is over to print any text
19:02:17FromDiscord<Iliketwertles> is there a way around that that also isnt .readLine()? i need it to read more than the first line
19:06:34FromDiscord<mk-fg> In reply to @jtv "open() is posix as": Pretty much - <https://github.com/mk-fg/incremetal-disk-compare-and-sync/blob/c5189e6/idcas.nim#L194-L202> :)
19:28:36*derpydoo joined #nim
19:31:18Amun-Raeight space indents in nim code, now I've seen everything :>
19:33:46*junaid_ quit (Remote host closed the connection)
19:34:58FromDiscord<sOkam!> In reply to @Amun-Ra "eight space indents in": stubbornness is a first class feature for some 🙈
19:36:00FromDiscord<djazz> its a tab, rendered as 8 in width
19:36:33Amun-Raain't tabs forbidden in nim source?
19:36:37FromDiscord<sOkam!> nim doesn't allow tabs 🤔
19:38:35Amun-Rabth I also swim againts the current, I use snake case
19:39:49FromDiscord<mk-fg> Yeah, it's just tabs, but nim has `#? replace(sub = "\t", by = " ")` for those
19:41:37FromDiscord<mk-fg> github seem to insist rendering those as 8 spaces, not sure why, given that's an indent size that don't think anyone uses in practice indeed
19:42:06*Amun-Ra thinks of linux kernel…
19:42:31FromDiscord<mk-fg> Oh, linux does that? I stand corrected :)
19:42:39Amun-Rayes, iirc :>
19:43:24FromDiscord<mk-fg> Makes a lot more sense then, guess it's probably an old C convention
19:43:55Amun-Raspeaking of old convntions, there are projects using GNU C code style… that thing is atrocious
19:51:46FromDiscord<mk-fg> Hopefully there'll be a lot less of any C around couple decades from now, in general :)
19:53:46Amun-Ra;>
20:10:34*cm quit (*.net *.split)
20:10:41*cornfeedhobo quit (*.net *.split)
20:10:41*madprops quit (*.net *.split)
20:10:43*Ekho quit (*.net *.split)
20:10:49*krydos quit (*.net *.split)
20:10:52*nyeaa492842301 quit (*.net *.split)
20:10:53*dza quit (*.net *.split)
20:10:53*Goodbye_Vincent quit (*.net *.split)
20:10:54*acidsys quit (*.net *.split)
20:10:54*om3ga quit (*.net *.split)
20:10:56*sagax quit (*.net *.split)
20:10:56*syl quit (*.net *.split)
20:10:57*ehmry quit (*.net *.split)
20:10:57*tinystoat quit (*.net *.split)
20:10:57*GreaseMonkey quit (*.net *.split)
20:10:57*deadmarshal_ quit (*.net *.split)
20:10:57*Evolver quit (*.net *.split)
20:10:58*blackbeard420 quit (*.net *.split)
20:10:58*madprog quit (*.net *.split)
20:10:59*fallback quit (*.net *.split)
20:10:59*anddam quit (*.net *.split)
20:11:00*_________ quit (*.net *.split)
20:11:00*sforman quit (*.net *.split)
20:11:00*henrytill quit (*.net *.split)
20:11:00*noeontheend quit (*.net *.split)
20:11:00*leastrio quit (*.net *.split)
20:11:00*mronetwo quit (*.net *.split)
20:11:00*void09 quit (*.net *.split)
20:11:01*Mister_Magister quit (*.net *.split)
20:11:01*redj quit (*.net *.split)
20:11:01*derpydoo quit (*.net *.split)
20:11:01*onetwo quit (*.net *.split)
20:11:02*NimEventer quit (*.net *.split)
20:11:02*tanami quit (*.net *.split)
20:11:02*genpaku quit (*.net *.split)
20:11:02*mahlon quit (*.net *.split)
20:11:02*Lord_Nightmare quit (*.net *.split)
20:11:02*systemdsucks quit (*.net *.split)
20:11:02*koltrast quit (*.net *.split)
20:11:02*rockcavera quit (*.net *.split)
20:11:03*mal`` quit (*.net *.split)
20:11:03*Amun-Ra quit (*.net *.split)
20:11:03*oprypin quit (*.net *.split)
20:11:03*oddish quit (*.net *.split)
20:11:03*estiquelapice quit (*.net *.split)
20:11:03*Onionhammer quit (*.net *.split)
20:11:04*hernan quit (*.net *.split)
20:11:04*adium quit (*.net *.split)
20:11:04*hexeme_ quit (*.net *.split)
20:11:04*ChanServ quit (*.net *.split)
20:11:04*termer quit (*.net *.split)
20:11:04*alice quit (*.net *.split)
20:11:04*crem quit (*.net *.split)
20:11:04*tk quit (*.net *.split)
20:11:04*xaltsc quit (*.net *.split)
20:11:04*robertmeta quit (*.net *.split)
20:11:04*ormiret quit (*.net *.split)
20:11:05*arkurious quit (*.net *.split)
20:11:05*cyraxjoe quit (*.net *.split)
20:11:05*jkl quit (*.net *.split)
20:11:05*cnx quit (*.net *.split)
20:11:05*oz quit (*.net *.split)
20:11:05*Notxor quit (*.net *.split)
20:11:06*dv^_^ quit (*.net *.split)
20:11:06*notchris quit (*.net *.split)
20:11:06*Jjp137 quit (*.net *.split)
20:11:07*pbsds quit (*.net *.split)
20:11:07*def- quit (*.net *.split)
20:11:07*Zevv_ quit (*.net *.split)
20:11:08*lain quit (*.net *.split)
20:11:08*nisstyre quit (*.net *.split)
20:11:08*arkanoid quit (*.net *.split)
20:11:08*gshumway quit (*.net *.split)
20:11:08*euantorano_ quit (*.net *.split)
20:11:08*LyndsySimon quit (*.net *.split)
20:11:09*azimut quit (*.net *.split)
20:11:09*FromDiscord quit (*.net *.split)
20:11:09*jmcantrell quit (*.net *.split)
20:11:10*adigitoleo quit (*.net *.split)
20:11:10*Batzy quit (Max SendQ exceeded)
20:11:10*xet7 quit (Max SendQ exceeded)
20:11:10*m5zs7k quit (Max SendQ exceeded)
20:12:20*derpydoo joined #nim
20:12:20*arkurious joined #nim
20:12:20*azimut joined #nim
20:12:20*Notxor joined #nim
20:12:20*rockcavera joined #nim
20:12:20*cyraxjoe joined #nim
20:12:20*sagax joined #nim
20:12:20*onetwo joined #nim
20:12:20*cm joined #nim
20:12:20*krydos joined #nim
20:12:20*madprops joined #nim
20:12:20*Ekho joined #nim
20:12:20*cornfeedhobo joined #nim
20:12:20*nyeaa492842301 joined #nim
20:12:20*Jjp137 joined #nim
20:12:20*mal`` joined #nim
20:12:20*termer joined #nim
20:12:20*FromDiscord joined #nim
20:12:20*Amun-Ra joined #nim
20:12:20*syl joined #nim
20:12:20*fallback joined #nim
20:12:20*pbsds joined #nim
20:12:20*NimEventer joined #nim
20:12:20*jkl joined #nim
20:12:20*oprypin joined #nim
20:12:20*dv^_^ joined #nim
20:12:20*def- joined #nim
20:12:20*Zevv_ joined #nim
20:12:20*jmcantrell joined #nim
20:12:20*alice joined #nim
20:12:20*cnx joined #nim
20:12:20*tanami joined #nim
20:12:20*genpaku joined #nim
20:12:20*lain joined #nim
20:12:20*oz joined #nim
20:12:20*estiquelapice joined #nim
20:12:20*ehmry joined #nim
20:12:20*crem joined #nim
20:12:20*void09 joined #nim
20:12:20*dza joined #nim
20:12:20*acidsys joined #nim
20:12:20*tinystoat joined #nim
20:12:20*mahlon joined #nim
20:12:20*Mister_Magister joined #nim
20:12:20*Lord_Nightmare joined #nim
20:12:20*anddam joined #nim
20:12:20*hernan joined #nim
20:12:20*Onionhammer joined #nim
20:12:20*redj joined #nim
20:12:20*GreaseMonkey joined #nim
20:12:20*systemdsucks joined #nim
20:12:20*euantorano_ joined #nim
20:12:20*LyndsySimon joined #nim
20:12:20*koltrast joined #nim
20:12:20*adium joined #nim
20:12:20*tk joined #nim
20:12:20*xaltsc joined #nim
20:12:20*Goodbye_Vincent joined #nim
20:12:20*robertmeta joined #nim
20:12:20*ormiret joined #nim
20:12:20*oddish joined #nim
20:12:20*deadmarshal_ joined #nim
20:12:20*hexeme_ joined #nim
20:12:20*Evolver joined #nim
20:12:20*om3ga joined #nim
20:12:20*blackbeard420 joined #nim
20:12:20*nisstyre joined #nim
20:12:20*arkanoid joined #nim
20:12:20*leastrio joined #nim
20:12:20*gshumway joined #nim
20:12:20*madprog joined #nim
20:12:20*adigitoleo joined #nim
20:12:20*notchris joined #nim
20:12:20*_________ joined #nim
20:12:20*sforman joined #nim
20:12:20*henrytill joined #nim
20:12:20*noeontheend joined #nim
20:12:20*mronetwo joined #nim
20:12:41*Batzy joined #nim
20:12:41*m5zs7k joined #nim
20:12:41*xet7 joined #nim
20:20:53*azimut quit (Ping timeout: 255 seconds)
20:22:06*joast joined #nim
20:22:39*azimut joined #nim
20:26:43FromDiscord<dlesnoff> sent a long message, see http://ix.io/4q2o
20:30:04FromDiscord<ieltan> Hello, is there any pattern matching in Nim ?
20:30:59FromDiscord<ieltan> i've found https://nim-lang.github.io/fusion/src/fusion/matching.html but i have seen discussion that it's going to be deprecated
20:31:17FromDiscord<ieltan> is it still safe to use and if not, is there any alternative ?
21:17:14FromDiscord<user2m> Hey guys I've got a quick question - since procs aren't bound to any object in nim is it possible to have a 'dir' like function on an object that will show you all the methods / and data tied to that object?
21:25:54FromDiscord<jmgomez> In reply to @not logged in "using the chrome debugger,": did the source map work then?
21:26:31FromDiscord<jmgomez> In reply to @ShalokShalom "Do you use it": yes, I use vscode. It's also integrated in the intellij products
21:26:39FromDiscord<jmgomez> (edit) "intellij" => "jerbrains"
21:27:31FromDiscord<jmgomez> In reply to @Jiezron "It does propose to": It may be due to it seeing the gigantic NUE codebase but I think I see it working fine on ther project. Not sure if it gets personalized
21:31:22FromDiscord<I have 50GB of nothing on my PC> how hard is wrapping external libraries (an I guess python libraries, because there's an unofficial support for that) for someone who doesn't really know either the library nor the language on the other side?
21:35:18FromDiscord<Phil> Is there a way to tell the compiler to infer something as a closure immediately?
21:35:43FromDiscord<Phil> sent a code paste, see https://play.nim-lang.org/#ix=4q2H
21:36:08FromDiscord<Elegantbeef> Aside from writing a macro nope
21:36:24FromDiscord<Elegantbeef> you should only need the closure on the first though
21:36:36FromDiscord<Elegantbeef> maybe on devel
21:37:00FromDiscord<Phil> on 1.6.10 that definitely doesn't work, on devel... one sec
21:37:06FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4q2I
21:37:10FromDiscord<Phil> Yeah on devel neither
21:37:11FromDiscord<Elegantbeef> Saves a few characters 😛
21:37:30FromDiscord<Phil> What is this unholy triple pragma amalgamation?
21:37:54FromDiscord<Elegantbeef> The pragma pragma lets you define your own pragma
21:38:50FromDiscord<Elegantbeef> Actually that doesnt work it seems
21:39:06FromDiscord<Elegantbeef> Since it's a calling convention
21:39:27FromDiscord<Elegantbeef> I take it back i'm just dumb
21:39:30FromDiscord<Phil> Either way it's fine overall
21:39:42FromDiscord<Elegantbeef> sent a code paste, see https://play.nim-lang.org/#ix=4q2K
21:40:42FromDiscord<Phil> so basically that defines a pragma alias
21:41:01FromDiscord<Elegantbeef> It's a non exportable pragma yes
21:43:22FromDiscord<Phil> Still, works decent enough, I'll use it the way it is.↵That was mostly to transfer click-event-handler-procs from one widget to a child-widget
21:43:36FromDiscord<Phil> I'm basically making a small design-lib with basic components
21:43:44FromDiscord<Phil> The bootstrap of libraries
21:43:57FromDiscord<Phil> Among those a burger menu
21:46:28FromDiscord<Phil> Worst case scenario it's a massive library of examples for owlkettle since I'm making a compileable useage example for every single widget in there
21:58:26FromDiscord<aquova> Hello everyone. Is the best way to read in a binary file to use `readall` and just treat it as a string? All the other read functions want me to know the size ahead of time
22:02:34FromDiscord<Phil> I have not once read in a binary file... I assume you want to read in said file at compileTIme?↵Is `gorge`/ `staticRead` an option?
22:04:12FromDiscord<aquova> No, at runtime. It'll take an arbitrary file and read in its contents, ideally as uint8, and modify the data before saving it
22:06:07*Notxor quit (Remote host closed the connection)
22:20:49FromDiscord<Elegantbeef> `readAll` or open then read the data to a bufffer
22:20:50FromDiscord<Elegantbeef> buffer even
22:20:54FromDiscord<Elegantbeef> Or even use \`std/streams
22:23:27FromDiscord<Phil> I wonder if I should implement a carousel widget
22:23:42FromDiscord<Phil> Or follow the advice I give everyone always: Don't use a carousel
22:26:20FromDiscord<Elegantbeef> carousels are just shitty scroll views
22:27:02NimEventerNew Nimble package! letUtils - A few handy macros for those who prefer `let` over `var`, see https://github.com/SirNickolas/let-utils-nim
22:28:44FromDiscord<Phil> Collapsible Panel and Akkordeon seem like a fair shout to implement though
23:11:09*azimut_ joined #nim
23:11:26*azimut quit (Ping timeout: 255 seconds)
23:18:11FromDiscord<mk-fg> In reply to @aquova "No, at runtime. It'll": You can read file/stream in chunks and extend the sequence as there's mode data, can also getFileSize ahead of time for initial allocation, or you can use memfiles module to treat it as a chunk of memory and have kernel load pages from disk as you access them (like it does for actual executable binaries/libs)