<< 03-11-2019 >>

00:00:02*junland quit (Quit: %ZNC Disconnected%)
00:00:08FromDiscord<mratsim> Here are some litterature on barrier design: https://github.com/mratsim/weave/blob/master/picasso/primitives/barriers.md#synchronization-barrier-techniques
00:00:26FromDiscord<mratsim> microsecond is a quite the high latency πŸ˜‰
00:01:50*junland joined #nim
00:11:04FromGitter<Vindaar> @kaushalmodi sorry, wasn't on gitter today. I'm working on a PR to add docs in which I also updated the README a bit. See here https://github.com/Vindaar/ggplotnim/tree/addDocs ⏎ So the dependencies should be all simple now. ⏎ I need to sleep now, but I'll come back to your question / use case tomorrow! Will show you a couple of examples (maybe adapt your dpi/nimetry thing) :)
00:19:53*theelous3 quit (Ping timeout: 245 seconds)
00:49:24FromDiscord<yewpad> Linux and M2 SSD
00:49:30FromDiscord<yewpad> A f-ing miracle
00:49:56disruptekyes, before i added san, my machine would boot in <4s.
01:25:07*ftsf joined #nim
01:57:55*dchem joined #nim
01:58:48FromGitter<itmuckel> Hey guys! Is there an easy way to update nim? For example is it planned to have a command like `nim update` or so? Or is it already there and I have missed it? πŸ™ˆ
01:59:00disruptekgoogle `choosenim`.
02:00:13FromGitter<itmuckel> lol, I use duckduckgo and `choosenim.com` was the first result. :-D
02:00:48disruptekthat might work well, too, depending on your goals.
02:05:34dchemYes use choosenim, best way to update.
02:07:43FromGitter<itmuckel> Yes, works perfectly, exactly like rustup.
02:07:47FromGitter<itmuckel> thx
02:08:03dchemNice
02:08:18FromGitter<itmuckel> Should at least be mentioned on the download page of nim-lang.org πŸ‘
02:08:51dchemhttps://nim-lang.org/install_unix.html
02:08:58dchemfirst item on the list :)
02:09:17FromGitter<itmuckel> https://nim-lang.org/install_windows.html Nope. ;-)
02:09:30dchemAhh
02:10:59dchemhttps://github.com/dom96/choosenim/releases
02:11:13dchemoh you already got it, nm
02:11:54FromGitter<itmuckel> πŸ˜„
02:21:28*ng0_ joined #nim
02:23:48*ng0 quit (Ping timeout: 260 seconds)
02:33:36*lritter quit (Quit: Leaving)
02:42:45*GordonBGood joined #nim
02:42:58*ntm joined #nim
02:54:30ntmis there a way to find the owner of a file? with getFileInfo/getFilePermissions, you can see permissions of the user and group that owns it, but I don't know how to get the user and group.
02:56:47disrupteki thought i saw a way to do this but now i can't find it.
02:57:49disruptekyou get use getpwnam or similar if you're on posix.
03:08:28*ng0_ quit (Quit: Alexa, when is the end of world?)
03:21:39ntmseems I can get the userid/groupid with "import posix; var a: Stat; stat("/path/to/file",a); echo a.st_uid"
03:22:16disruptekoh i misread your request; sorry. i thought you wanted to lookup the current uid/gid.
03:23:12disruptekand, yes, stat is the right tool for the job.
03:23:33ntmwell, it pointed me in the right direction, so I appreciate it
03:23:45disruptekπŸ‘
03:28:19*a_chou joined #nim
03:28:34*a_chou quit (Client Quit)
03:29:00*a_chou joined #nim
03:34:54*a_chou quit (Remote host closed the connection)
03:41:23*a_chou joined #nim
03:48:03*exelotl quit (Ping timeout: 264 seconds)
04:08:13*a_chou quit (Quit: a_chou)
04:18:28*theelous3 joined #nim
04:53:06*jwm224 joined #nim
04:54:04*jwm224 quit (Quit: WeeChat 2.7-dev)
04:55:56*dchem quit (Quit: WeeChat 2.4)
04:56:38*chemist69 quit (Ping timeout: 246 seconds)
04:57:56*jwm224 joined #nim
04:58:48*chemist69 joined #nim
05:17:11FromDiscord<demotomohiro> I sent a PR that mention choosenim and scoop in install_windows.html.
05:17:11FromDiscord<demotomohiro> https://github.com/nim-lang/website/pull/148/files
05:21:40*Jjp137 quit (Read error: Connection reset by peer)
05:23:14*dddddd quit (Remote host closed the connection)
05:25:08*Jjp137 joined #nim
05:32:08FromDiscord<Winton> help me
05:32:08FromDiscord<Winton> https://cdn.discordapp.com/attachments/371759389889003532/640422939191279626/ss.PNG
05:36:48FromDiscord<demotomohiro> you need to add a parent directory of nim executable to PATH environment variable.
05:37:16FromDiscord<demotomohiro> How to do that depends on OS.
05:37:53*nsf joined #nim
05:59:28*u0_a215 joined #nim
06:00:19u0_a215exit
06:00:22u0_a215quit
06:00:27FromDiscord<Rika> uh
06:00:27*u0_a215 quit (Client Quit)
06:00:34FromDiscord<Rika> are you trying to leave the IRC channel?
06:03:20*thomasross quit (Remote host closed the connection)
06:03:47*thomasross joined #nim
06:06:25*jwm2241 joined #nim
06:30:18*jwm2241 quit (Quit: WeeChat 2.7-dev)
06:32:55*jwm2241 joined #nim
06:38:35*solitudesf joined #nim
06:39:27*mr2robot joined #nim
06:44:08*mr2robot quit (Remote host closed the connection)
06:59:05*jwm2241 quit (Quit: WeeChat 2.7-dev)
07:04:20*thomasross quit (Remote host closed the connection)
07:04:47*thomasross joined #nim
07:07:36*theelous3 quit (Ping timeout: 240 seconds)
07:41:56FromDiscord<ndl> good morning
07:47:11*Trustable joined #nim
07:50:27*solitudesf quit (Ping timeout: 264 seconds)
07:57:24Araqhi
07:57:49*Trustable quit (Remote host closed the connection)
08:00:00*gmpreussner_ quit (Quit: kthxbye)
08:05:06*gmpreussner joined #nim
08:14:45FromDiscord<Rika> greetings, my lord
08:14:48FromDiscord<Rika> πŸ˜›
08:38:36FromDiscord<mratsim> lol
08:40:10*NimBot joined #nim
08:40:22FromDiscord<mratsim> Is the "owner" macro stable? (https://github.com/nim-lang/Nim/pull/8253/files) I see that it is feature gated. I will probably need to implement a simple way to capture environment and send them to spawned threads to replace the `parallel` magic block from threadpool
08:40:25*itmuckel joined #nim
08:43:34*itmuckel left #nim (#nim)
08:43:55AraqI think it's unwise to rely on it, on the other hand the AST/IR changes we eventually will do would also support this feature
08:45:58*Vladar joined #nim
09:02:53*CcxWrk quit (Killed (orwell.freenode.net (Nickname regained by services)))
09:02:54*CcxWrk joined #nim
09:03:20*thomasross quit (Remote host closed the connection)
09:03:44*thomasross joined #nim
09:25:21*narimiran joined #nim
09:40:20*thomasross quit (Remote host closed the connection)
09:40:47*thomasross joined #nim
09:41:13*ftsf quit (Ping timeout: 268 seconds)
09:52:11*nsf quit (Quit: WeeChat 2.6)
09:57:35FromDiscord<itmuckel> Hey guys! I just tried to create a new nimble project, binary. I ran `nimble build` and it created an executable in the project's root. When I run `nimble run` it tells me `Error: Binary '.exe' is not defined in 'mex' package.` I have the line `bin = @["mex"]` in my `mex.nimble` file. Are there extra steps I need to take on Windows? πŸ€”
09:58:45FromDiscord<itmuckel> Changing it to `@["mex.exe"]` doesn't work either.
10:03:19FromDiscord<itmuckel> Of course I can add a new task to the nimble file that just executes the file, but it seems like nimble run should do that already. πŸ˜„
10:09:36lqdev[m]did you use `nimble init` to create your nimble package?
10:09:59FromDiscord<luka> Hi, is there a way to limit the amount of memory that a HashSet uses? (by ignoring incl calls that would require more space) Looking at the source code, I guess one way would be to call the mustRehash() function myself and then don't call incl. However, I would need to access HashSet.data for that (mustRehash needs its length), and "data" is not exported.
10:11:13lqdev[m]luka: iirc there's a `len` property
10:11:27lqdev[m]you can use that to limit the length of the hashset
10:11:39lqdev[m]though I'm not sure if it's what you need
10:12:36FromDiscord<luka> @gitterirc I think that would give me the number of elements stored, but I need the memory usage (which I guess is much larger)
10:14:55lqdev[m]then get the memory usage of its elements using `x.len * sizeof(T)`, I guess?
10:15:11lqdev[m]I'm not sure what you're trying to accomplish in the end
10:15:22FromDiscord<itmuckel> @lqdev Yes, I created the package with nimble init and told it that I want a binary. Nothing else, it's still the Hello World in there. I used choosenim to install nim 1.0.2
10:17:53lqdev[m]@itmuckel seems weird. I assume mex.nim is inside the `src` folder, and you didn't alter the .nimble file?
10:18:16FromDiscord<itmuckel> yep
10:18:35FromDiscord<luka> I'm guessing that HashSet allocates more memory than the actual size of the set, am I wrong? I'm using HashSet for caching, and want to keep adding elements to it as long as there is memory left
10:19:04dom96itmuckel: possibly a bug on Windows, `nimble run` is relatively new :)
10:19:56FromDiscord<itmuckel> I guess it has something to do with Windows, because it wouldn't look for a Binary named `.exe` on Linux. πŸ€—
10:20:20lqdev[m]luka: it does allocate more memory, it's the basic working principle of a hash set/hash table
10:20:42lqdev[m]but I don't think there's a way of checking how much mem is already allocated
10:21:45FromDiscord<luka> a way would be by looking at HashSet.data variable, but it is not exported, so I cannot read it
10:23:41lqdev[m]it shouldn't be exported since it's an implementation detail and may change any time
10:24:18lqdev[m]I think checking if len < someLimit should be enough, tho
10:25:07lqdev[m]since when you hit the limit no more memory will be allocated because the set's not expanding anymore
10:26:14FromDiscord<itmuckel> @dom96 I created an [issue on github](https://github.com/nim-lang/nimble/issues/735)
10:27:17FromDiscord<luka> is there a way of forcefully accessing a field that is not exported in Nim? (I'm aware it's an implementation detail etc.)
10:27:22dom96itmuckel: thanks
10:36:51lqdev[m]luka: afaik there exists a bug where if you use a template exported from the same file where the field is defined, and that template accepts an `untyped` body, you can access all internal fields and procs from that other module
10:37:27lqdev[m]but it's a bug
10:37:33lqdev[m]and idk if it's fixed yet
10:37:55lqdev[m]and I don't know if there are any templates that fit your purpose in hashsets
10:38:29FromDiscord<luka> I've just googled this: https://github.com/nim-lang/Nim/pull/11865, the include workaround seems to work (I basically need this just today, for just one execution, so any solution is fine)
10:38:37FromDiscord<luka> lqdev: thanks!
10:43:50*thomasross quit (Remote host closed the connection)
10:44:14*thomasross joined #nim
10:49:01*ng0 joined #nim
10:49:47FromDiscord<itmuckel> @dom96 I just read `nimble -h` and it states that I need to pass the name of the executable. `nimble run mex` actually runs mex.exe. Is that the intended use? Then I just used it wrong. I thought it automatically runs the specified binary in my .nimble file.
10:50:22dom96itmuckel: oh yes, that is the intended use. But even I forgot that, and I implemented this feature heh
10:50:40dom96We can extend this command to support your use case
10:50:46*ng0 quit (Client Quit)
10:51:44*ng0 joined #nim
10:52:39FromDiscord<itmuckel> That would be nice! I think it's redundant if `build` takes the name specified in the nimble file, but `run` needs an explicit name.
10:52:56FromGitter<kaushalmodi> disruptek: What's the reference to your commit push regarding recursive .nimble finder? Which repo should I look at?
10:54:57FromDiscord<itmuckel> I just added the solution to the issue I opened and the feature request too.
10:55:10FromGitter<kaushalmodi> @Vindaar Thanks. I'll then look into ggplotnim this week. Nimetry does what I need for now. I am exploring ggplotnim too as I believe it will allow me to overlay multiple plots in different colors. I might have a need for something like that in future.
10:57:29*clyybber joined #nim
11:06:40FromDiscord<itmuckel> Can I pin dependencies in nimble files? `requires "sdl2_nim = 2.0.10"` doesn't work, only `>=` works. πŸ€”
11:07:05FromGitter<kaushalmodi> Try `==`
11:07:35FromDiscord<itmuckel> Still "Invalid operator"
11:08:11FromGitter<kaushalmodi> disruptek: ok, found your project call "bump". It would be nice to have that in core under `getProjectRoot` or something like that.
11:08:43FromGitter<kaushalmodi> Where the extensions to decide the project root has be passed as an array
11:09:11FromGitter<kaushalmodi> I can think of `[".nimble", ".git"]`
11:09:29FromDiscord<itmuckel> Found it in the source of nimble: `requires "package_name version" ` is the syntax for pinning versions. So no = and no ==, just nothing.
11:09:43FromGitter<kaushalmodi> itmuckel: cool, good to know.
11:10:05FromDiscord<itmuckel> Surprising behavior. I'd expect == or = to work too.
11:10:08FromGitter<kaushalmodi> It might be still worthwhile to feature request the `==` syntax
11:10:35FromDiscord<itmuckel> I'll write an issue. πŸ˜„
11:10:35*Vladar quit (Quit: Leaving)
11:10:40FromGitter<kaushalmodi> I agree that if >= works, it's obvious that someone would try out ==
11:12:30FromDiscord<itmuckel> I think I'll just create a pull request myself. The fix seems so easy that I can do it myself although I use nim since a few hours ago lol.
11:16:36FromGitter<kaushalmodi> itmuckel: +1
11:16:58FromGitter<kaushalmodi> Please add support for == and not =
11:17:00*narimiran quit (Ping timeout: 265 seconds)
11:17:10FromGitter<kaushalmodi> You are comparing there, not assigning
11:17:11FromDiscord<itmuckel> @dom96 I'll add only "==" as the pinning operator to stick with nim's comparison operators
11:17:18FromDiscord<itmuckel> Yeah, exactly my thought.
11:17:25FromGitter<kaushalmodi> Awesome
11:17:28Zevvthere might be a good reason for '==' not being there already, but I'm sure dom96 or one of the other nimble guys will point that out on the PR if so
11:17:52FromDiscord<itmuckel> Yeah, we'll see
11:18:10FromGitter<kaushalmodi> Please share the issue here. I'd like to follow it.
11:18:45FromDiscord<itmuckel> I would just create a pull request and post a link to it here, if that's good enough
11:26:40FromDiscord<itmuckel> https://github.com/nim-lang/nimble/pull/736
11:29:52clyybberAraq: Hey, are discriminator types bigger than int16 actually supported?
11:34:38*letto quit (Quit: Konversation terminated!)
11:35:52*ng0 quit (Ping timeout: 260 seconds)
11:36:00*letto joined #nim
11:37:09*ng0_ joined #nim
11:40:44Zevvclyybber: like this? http://ix.io/20GC
11:40:58Zevv"relocation truncated to fit: R_X86_64_PC32 against symbol `gEnv' defined in COMMON section" is nice
11:44:52clyybberZevv: They can fail in all kind of different ways
11:45:02clyybberThey can crash in int128
11:45:10clyybberThey can bring gcc to hang up
11:45:19clyybberand you can dos playground with that
11:45:28ZevvI can see why it crashes, but gcc to hang is funny stuff
11:45:33clyybberYeah
11:46:28clyybberhttps://github.com/nim-lang/Nim/issues/12379#issuecomment-549065685
11:46:33clyybberZevv: There you go
11:47:38clyybberbut beware, it really brings my XServer down to a halt
11:47:52Zevvthose both work for me
11:47:55*nsf joined #nim
11:48:12clyybberHuh.
11:48:16Zevvhuh indeed
11:48:19clyybberTry it in playground
11:48:27clyybberYou should get error 502
11:48:32clyybberServer not accessible
11:48:35clyybberor something like that
11:49:13Zevvoh wait I'm mixing stuff up again - I never to that usually, you understand of course
11:49:16Zevvwait a min
11:49:54Zevv-d:danger did the job of getting it through
11:49:57Zevvwithout it blows up indeed
11:50:17clyybberyeah, because -d:danger disables the field access checks
11:50:27clyybberand those are bogus with types bigger than int16
11:51:09clyybberapparently bogus enough to make gcc think about life and the universe and everything
11:53:19*Vladar joined #nim
12:02:29*solitudesf joined #nim
12:08:04*ng0_ quit (Ping timeout: 260 seconds)
12:13:21*ng0_ joined #nim
12:26:57FromDiscord<Lantos> nimorm is throwing "is not GC-safe as it calls 'exec' is that anything to be conserned about?
12:27:20*thomasross quit (Remote host closed the connection)
12:27:45*thomasross joined #nim
12:30:28FromDiscord<Lantos> this is coming from dbconn.exec I guess not too much to worry about
12:31:11*thomasross quit (Max SendQ exceeded)
12:31:38*thomasross joined #nim
12:42:11*theelous3 joined #nim
12:47:15enthus1astany idea how i could get this to work? https://gist.github.com/enthus1ast/e487aec1d08b7c4822a48a3711f27cdf
12:50:23enthus1astmy goal is to get a set for each detected platform/distro
12:50:41enthus1asta set that includes each detected distro i must say
12:54:19lqdev[m]enthus1ast: if you want to iterate through all values of an enum, use `for x in low(T)..high(T)`
12:57:31enthus1astok lqdev[m] but the issue seems that detectOs is not eating the `forvar`
12:58:20*thomasross quit (Remote host closed the connection)
12:58:45*thomasross joined #nim
12:59:31lqdev[m]looking at the way is implemented, I don't think there's a way
13:00:09lqdev[m]give me a sec
13:00:26enthus1asti must say i tried to do it with macros, but i'm total macro noob
13:01:37enthus1astthis is what i came up with: https://gist.github.com/enthus1ast/13f7efddce9ee192dfd21045056c6a2e
13:03:37*Vladar quit (Quit: Leaving)
13:03:42enthus1astand this is what i need: https://gist.github.com/enthus1ast/110121ca06bdc71f967c7406bac5ad9a
13:04:01lqdev[m]hmm, let me try
13:12:26*dddddd joined #nim
13:12:27*Romanson joined #nim
13:12:57*ponyrider quit (Quit: WeeChat 2.6)
13:17:36*ponyrider joined #nim
13:17:44lqdev[m]enthus1ast: https://play.nim-lang.org/#ix=20H3
13:17:57lqdev[m]I've commented each step so it should be easy to understand
13:18:58lqdev[m]it's probably an overkill solution but I don't think there's a simpler one, given how detectOs is designe
13:18:58lqdev[m]d
13:19:28enthus1astnice lqdev[m] !
13:20:08lqdev[m]no problem, feel free to use it
13:21:12enthus1asti'll use it in my "saltstack clone" nimPepper
13:31:50*thomasross quit (Remote host closed the connection)
13:32:16*thomasross joined #nim
13:49:32*arzt joined #nim
13:50:16*thomasross_ joined #nim
13:50:16*thomasross quit (Killed (orwell.freenode.net (Nickname regained by services)))
13:50:16*thomasross_ is now known as thomasross
13:52:27*arzt quit (Client Quit)
13:53:21*MarderIII joined #nim
13:54:47*arzt joined #nim
13:55:00*MarderIII quit (Remote host closed the connection)
13:55:14*arzt quit (Remote host closed the connection)
13:55:44*MarderIII joined #nim
13:56:31*MarderIII quit (Client Quit)
14:04:34*narimiran joined #nim
14:15:38*GordonBGood quit (Ping timeout: 268 seconds)
14:26:42disruptekkaushalmodi: https://github.com/disruptek/bump
14:29:15*nsf quit (Quit: WeeChat 2.6)
14:30:00*Trustable joined #nim
14:31:31FromGitter<kaushalmodi> disruptek: Yes, that's how I learned that you were talking about your "bump" project
14:31:52FromGitter<kaushalmodi> .. I looking into your activity on your GitHub profile to see what commit you were talking about :)
14:32:03*theelous3 quit (Ping timeout: 240 seconds)
14:32:37disruptekit was version 1.8.3
14:33:49disruptekhttps://github.com/disruptek/bump/commit/8fbaca684f8274e2827ea62ac9556b38a0fa7917
14:34:39disruptekit's not a great solution, though, because it uses the env.
14:35:19disruptekor as Araq calls it, the "medieval" env.
14:37:48disruptekthere's a chance that there's another way to do it depending on how sameFile works.
14:46:33disruptekshould be possible.
14:54:27*Vladar joined #nim
15:02:20disruptekdev docs seem to be linking to a version-1-1 tree as opposed to devel.
15:02:35narimiran1.1 is devel
15:02:47disruptekmaybe, but the links don't work.
15:02:59disruptekie. source links.
15:03:02narimiranaaah, i might know why.
15:03:22narimiranbecause until few days ago, devel was always x.y.odd
15:03:29narimiranand now is x.y.even
15:04:21disruptekthat's odd.
15:04:32narimiranno, it *was* odd, it isn't anymore :P
15:05:07disruptekeven worse?
15:05:57narimiranpunny guy
15:07:50narimiranbtw, where did you get those wrong links?
15:08:17disruptekos module on gh-pages.
15:08:44narimiranhttps://nim-lang.github.io/Nim/os.html this one?
15:08:53disruptekyeah.
15:08:57narimiranaaaah
15:08:58narimirani see
15:09:24disruptekthe edit link is fine, it's just the source link.
15:09:25narimirani pushed a version bump, so it should be ok in an hour or two or whenever new docs will be built
15:09:31disruptekcool, ty.
15:43:15FromDiscord<Chiqqum_Ngbata> Getting sporadic SIGSEGV when invoking GC_fullCollect manually for testing. Any thoughts for debugging
15:44:19FromGitter<kaushalmodi> narimiran: so devel should be 1.1.99, right?
15:44:25narimiranno
15:44:34FromGitter<kaushalmodi> So that the next release is 1.2?
15:44:37narimiranyes
15:45:50FromDiscord<Chiqqum_Ngbata> Interestingly, I'm getting a sporadic SIGABRT with --gc:boehm
15:49:38*seerix joined #nim
15:52:23FromDiscord<Chiqqum_Ngbata> Is there no way to get more tracing out of this? I'm just getting the line where GC_fullCollect is invoked
15:58:33*ng0_ is now known as ng0
16:02:23disruptek-d:nimTypeNames -d:useGcAssert and dumpNumberOfInstances()
16:02:39disruptekGC_getStatistics()
16:04:50disruptekfinally found a use for `auto`.
16:09:03FromDiscord<Chiqqum_Ngbata> nimTypeNames and useGcAssert did not yield any more information
16:14:50*thomasross quit (Remote host closed the connection)
16:15:16*thomasross joined #nim
16:15:53FromDiscord<Chiqqum_Ngbata> Printing dumpNumberOfInstances() gives me a bunch of nothing. Of course, I can only log it prior to GC_fullCollect() as the exception occurs at that point
16:31:42FromGitter<zacharycarter> So does nativesockets now support non-blocking UDP sockets?
16:32:08clyybberAraq: Hey are you there?
16:40:19FromDiscord<krptr> hi guys, playin with generics, I understand binding on generic return types is not supported, but I found another thing which I don't know if it's by design, mind someone check as I'm a newbie? https://play.nim-lang.org/#ix=20Ij
16:40:47FromDiscord<krptr> I understand that a.b(c) is sintactic sugar for b(a, c), but seems not the case with generics?
16:42:23disruptekyour A doesn't have any way for the generate to be bound.
16:42:36disruptekdefine it like A[T] = ref object ... value: T
16:43:26disrupteks/generate/generic/
16:44:14disruptekie. how should it know what type T is in your example?
16:44:27FromDiscord<krptr> but I want a generic procedure, not a generic object... does this mean tha taccessing read() through an instance, T is bound to the object but not the procedure?
16:45:26disruptekask yourself why your write() works.
16:46:35disruptekwrt line 25, it's a querk of ufcs afaik.
16:46:40disruptekquirk, too.
16:47:07FromDiscord<krptr> hummm... thinking...
16:49:03disruptekthe way generics work is that the compiler makes new versions of the procs when it sees new types passed to them. but it cannot figure out what kinda proc to make if there isn't 1) a type specified manually, or 2) an associating between a parameter type and the generic type it's trying to discover.
16:49:15disruptekit's kinda like filling in variables in a formula.
16:50:11FromDiscord<krptr> I understand why line 23 doesn't work (I even explained in the comments) but I didin't know line 26 was a quirk as I was explicitly binding T
16:50:36disruptekit has to do with the way ufcs orders the arguments to the call.
16:52:05disruptekthe parser is simpler than the language, basically.
16:54:25*jwm2241 joined #nim
17:00:45*Romanson quit (Quit: Connection closed for inactivity)
17:03:08FromDiscord<krptr> ahmm... ok, disruptek, thanks
17:13:19*lritter joined #nim
17:13:49dom96Oooh, my game now works 100% on iOS. I'm amazed that asyncdispatch works out of the box on iOS, all I needed to add was some `defined(ios)` :O
17:14:17disrupteknice.
17:15:55yumaikaso/
17:16:33yumaikasdom96: what game? And what are you using asyncdispatch to do?
17:19:09*jwm2241 quit (Quit: WeeChat 2.7-dev)
17:26:00dom96yumaikas, it's called Stardust and it'll be similar to agar.io/slither.io
17:26:35FromDiscord<krptr> disruptek, tried to find an issue in the repo regarding that ufcs quirk but I had no luck, is that quirk documented or an issue in github already there that I can follow?
17:28:18yumaikasSounds cool. You have a website for it up?
17:30:37clyybberdom96: Nice, what graphics API do you use?
17:30:38dom96yumaikas, not yet
17:31:02dom96clyybber, my own: gamelight. It targets canvas in the browser and SDL2 otherwise
17:31:19clyybberOh, sounds nice, is it on github?
17:31:35clyybberah found it
17:33:12dom96yeah, not that it's very rough though, I'm basically implementing what I need for my game without much thought about keeping backwards compatibility :)
17:33:21dom96*note
17:36:29FromGitter<zacharycarter> shashlick: question if you're around - is there a reason nimterop on windows defaults to MinGW makefiles? shouldn't it default to building with visual studio?
17:39:10dom96zacharycarter: probably because MinGW is Nim's defualt
17:39:12dom96*default
17:40:57FromGitter<zacharycarter> well, I think it should be able to be overridden at least
17:41:08FromGitter<zacharycarter> mingw on windows is a pain
17:43:27FromGitter<zacharycarter> I'll file an issue
17:47:03FromGitter<blakeb211> Whats my best bet to do cross plat guis in nim
17:49:23disruptekhttps://github.com/VPashkov/awesome-nim#gui
17:49:25FromGitter<zacharycarter> for desktop applications or for games or for what?
17:50:19disruptekdunno how nimgl isn't in that list.
17:50:56zedeuslots of useful things aren't on that list, it's very incomplete
17:51:19shashlick@zacharycarter I would add visual studio support if there was interest
17:51:37shashlickYou're the first to ask since I started with nimgen way back when
17:52:02FromGitter<zacharycarter> :P
17:52:17FromGitter<zacharycarter> well I made an issue on the nimterop repo - so at least it's logged
17:52:23FromGitter<zacharycarter> I think I can live without it for now
17:54:18shashlickCool
18:00:26*clyybber quit (Quit: WeeChat 2.6)
18:15:17Zevv!eval let ☺ = 42; echo ☺
18:15:19NimBot42
18:29:41*nsf joined #nim
18:31:04FromDiscord<itmuckel> Blasphemy! He has a name you know... It's Uncle Ben! πŸ˜€
18:31:04FromDiscord<itmuckel> https://cdn.discordapp.com/attachments/371759389889003532/640618962669010946/unknown.png
18:38:41*clyybber joined #nim
18:42:22Zevvhttp://zevv.nl/div/uncle_ben.png
18:42:57FromDiscord<treeform> I just spent a day debugging Arabic characters in TTF.
18:42:59FromDiscord<treeform>
18:42:59FromDiscord<treeform> https://cdn.discordapp.com/attachments/371759389889003532/640621969028546561/unknown.png
18:43:16FromDiscord<treeform> Latin letters are way simpler
18:45:15Zevvbut arabic looks way cooler
18:46:19FromDiscord<treeform> arabic has only 28 letters ... but to typeset it you need 1340 "shapes"
18:46:45disrupteksounds easy enough.
18:47:27FromDiscord<treeform> And I though that CJK was hard.
18:47:52FromDiscord<treeform> I guess this is a big like if you used latin cursive script
18:48:14FromDiscord<treeform> so you had every combination of letters like 'af' and 'gh' connect nicely
18:48:27FromDiscord<treeform> you will have a ton of different shapes
18:48:44disrupteki just stack them on top of each other anyway.
18:48:51disrupteklike nixie lights.
18:51:05FromDiscord<treeform> I don't think you can do that with arabic, many of the letters are very small
18:51:46FromDiscord<treeform>
18:51:46FromDiscord<treeform> https://cdn.discordapp.com/attachments/371759389889003532/640624177099046953/unknown.png
18:52:36FromDiscord<treeform> and they don't go in a line...
19:02:10FromDiscord<treeform> Great I can now render these Arabic letters without errors:
19:02:16FromDiscord<treeform>
19:02:16FromDiscord<treeform> https://cdn.discordapp.com/attachments/371759389889003532/640626817778188288/Amiri-Regular.png
19:08:13*exelotl joined #nim
19:18:09*theelous3 joined #nim
19:23:14*ntm quit (Ping timeout: 265 seconds)
19:47:11*MightyJoe joined #nim
19:48:51*cyraxjoe quit (Ping timeout: 265 seconds)
19:58:30*GordonBGood joined #nim
20:03:21*GordonBGood quit (Ping timeout: 265 seconds)
20:10:43*ntm joined #nim
20:12:59ZevvWhat is the huge thing centered almost 90% down?
20:13:06Zevvwith the long horizontal streak
20:14:01disruptekyou weren't supposed to see that.
20:14:29ZevvI saw it
20:14:37disruptekyou saw nothing.
20:14:41Zevvyou can *almost* render this stuff without errors, you mean :)
20:16:37Zevvbut what does it say?
20:17:01disruptekit says ZALGO PWNS
20:18:00Zevvwut?
20:18:40disruptekhttp://www.eeemo.net/
20:22:49Zevvtoo old for that shit
20:23:38disruptektreeform ain't.
20:25:01Zevvi feel sorry for these people on the unicode consortium. Trying to make the world a better place by unifying all languages of the world in a common encoding, and now they are forced to disuss if the next unicode turd emoticon needs to be light brown or dark brown
20:26:13disruptekbut turds /are/ universal.
20:26:44disruptekeveryone poops, zevv.
20:27:41Zevvyes but I want an emoticon to express my slightly loose floating morning stool including corn kernels
20:27:50Zevvbecause I am unique, and so is my poop
20:27:52*ntm quit (Quit: Leaving)
20:28:04Zevveveryone has unique poops
20:28:09disrupteksee, you get where i'm coming from with stacking my characters.
20:28:26shashlick@disruptek you good with the -u flag to enable working with ~/.nimble when in local deps mode?
20:28:47shashlickAlso, what's your thought around @arnetheduck concerns from yesterday
20:28:50Zevvoh yeah what is this local deps idea, where can I readup on that?
20:29:19Zevvah found it
20:29:57disrupteklemme see what's new.
20:30:22shashlickhttps://irclogs.nim-lang.org/02-11-2019.html#21:49:39 my response to his concerns from earlier yesterday
20:30:59shashlickhttps://irclogs.nim-lang.org/02-11-2019.html#18:12:02 is where he commented
20:31:05disruptekwhat does the -u mean and why do i need it?
20:31:32shashlickTo enable nimble develop and nimble install to work how it does today when in a local deps environment
20:31:48shashlickSo like how npm has a -g flag
20:32:05Zevvbut then inverted?
20:32:07disruptekdoes the `u` stand for **-unconveniently-named**?
20:32:12Zevvso --user vs --global?
20:32:15shashlickUser
20:32:28shashlickYes cause global is later if anyone cares enough
20:32:47*adeohluwa joined #nim
20:33:04disruptekso you'd rather make me type -u every time than edit my files once or `mkdir localdeps`?
20:33:34disruptekwhy don't you just put the --global flag in?
20:33:38Zevvbut global is not really global, it's per-user global. naming confision arises?
20:33:48shashlickNo no
20:33:52disruptekyou say we can't use it because you're saving it. so put it in and make global opt-in.
20:34:22shashlickLocal deps is enabled as described - create dir or .nimble flag
20:34:30*clyybber quit (Quit: WeeChat 2.6)
20:34:30shashlickThen everything works that way
20:34:38disruptekoh this is just for develop or install?
20:34:38shashlickIf you want to break out use -u
20:34:51shashlickAnywhere it applies
20:35:02disruptekoh, -u means -use-my-~/.nimble-dir-please?
20:35:02shashlickCause most of the time you are in local
20:35:06shashlickYes
20:35:20disruptekoh, that sounds fine to me. why would i have a problem with that? 🀣
20:35:27shashlickAnd -g eventually is use the system dir
20:35:41disrupteki mean, that's a better interface than i expected.
20:36:11shashlickBut folks are mixing lock files and vendoring into this
20:36:23shashlickI just see this as a stepping stone to get those
20:36:53disrupteklockfiles don't make sense w/o localdeps, imo.
20:37:15disruptektoo much of a pita to develop w/o them.
20:38:02ZevvSo the goal is to get a three level system, like local-project, per-user, and global?
20:38:41disruptekno, it should be 64-bit token-based capabilities.
20:44:39shashlickEventually
20:44:44shashlickBut now just focusing on local
20:44:53shashlickI don't know the value of system global
20:45:00shashlickRoot is a nuisance
20:45:30disruptekyeah, i hate that guy.
20:53:36*nsf quit (Quit: WeeChat 2.6)
20:59:48shashlickSo local deps then nimble install to add/remove stuff from the .nimble file for you and then lock files
21:00:58shashlick@arnetheduck suggests that lock files will solve the local deps issue altogether but I think you need isolation to even get to a place where a lock file is doable
21:01:18shashlickBut I'm open to feedback since I don't want to waste time either
21:01:39disrupteklockfiles presuppose that the code is committed. this is not always the case, though it's a nice ideal.
21:01:45shashlickAs you can see, I don't want to code stuff that dies in a PR
21:02:40disrupteki guess we could refuse to even write the lockfile if the branches are dirty.
21:04:10*GordonBGood joined #nim
21:09:11*Trustable quit (Remote host closed the connection)
21:14:10FromGitter<Vindaar> @kaushalmodi I created a PR on your verilog repo
21:19:12FromDiscord<treeform> @Zevv, I don't know what that thing is exactly. Its a huge ligature compose of like 30 letters. It has the word Allah in it. Maybe a player thingy of some sort?
21:19:39FromDiscord<treeform> @Zevv, I don't know what that thing is exactly. Its a huge ligature compose of like 30 letters. It has the word Allah in it. Maybe a prayer thingy of some sort?
21:21:14*adeohluwa quit (Remote host closed the connection)
21:25:40FromGitter<kaushalmodi> @Vindaar thanks for doing that extra mile. I will try it out as soon as I get to my development machine
21:26:13FromGitter<kaushalmodi> s/doing/going/ :)
21:29:35*krux02 joined #nim
21:36:39*abm joined #nim
21:44:26*narimiran quit (Remote host closed the connection)
21:48:49*LyndsySimon quit (*.net *.split)
21:48:49*surma quit (*.net *.split)
21:54:09*LyndsySimon joined #nim
21:54:10*surma joined #nim
21:56:51FromGitter<Vindaar> you're welcome! Let me know if it works for you. And if you encounter bugs / things you don't like etc. consider opening an issue. Some stuff may be obvious to me, but just not a priority. Then I have a better idea of what's important
22:04:19*disbot joined #nim
22:05:00*snooptek quit (Remote host closed the connection)
22:10:13*SyrupThinker left #nim (#nim)
22:10:25*krux02 quit (Remote host closed the connection)
22:19:26*Vladar quit (Quit: Leaving)
22:55:20*ng0 quit (Quit: Alexa, when is the end of world?)
23:20:17*solitudesf quit (Ping timeout: 240 seconds)
23:32:01*pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
23:32:19*pbb joined #nim
23:34:33*Simerax joined #nim
23:39:15*rockcavera joined #nim
23:41:26*Simerax quit (Quit: https://quassel-irc.org - Komfortabler Chat. Überall.)