<< 28-02-2018 >>

00:14:35FromGitter<zacharycarter> any interest in a port of - https://github.com/amark/gun - for Nim?
00:16:34FromGitter<zetashift> that's pretty damn neat
00:17:23FromGitter<zacharycarter> I'm using it at work - for a pilot project - to facilitate an annoying reoccurring ask.
00:19:15dyce[m]great post! https://nim-lang.org/blog/2018/01/22/yes-command-in-nim.html
00:40:08*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
00:40:48FromGitter<zacharycarter> @zetashift - we have a cluster of nodejs servers running express web servers on them, and they all need this data that we had originally hard-coded since it was a pilot product.
00:41:29FromGitter<zacharycarter> we kept getting asks in the middle of the week to update an e-mail address in the data set, or some other data
00:41:48FromGitter<zacharycarter> and it would interrupt our deployments, as we had things staged in branches, and releases tagged already, etc...
00:42:13FromGitter<zacharycarter> so now we just run a p2p network w/ gun and use it's s3 module to automatically sync the data to s3
00:42:28FromGitter<zacharycarter> and any time we update a node in the cluster, everything syncs
00:42:42FromGitter<zetashift> I know jack about deployment stuff like this, but it sounds like a great solution for an icky problem
00:42:57FromGitter<zetashift> How would you port it to NIm? Make JS bindings?
00:43:03FromGitter<zacharycarter> well it's a stop gap until we implement the right solution for the problem
00:43:04FromGitter<zacharycarter> nah - reimplement in Nim
00:43:28FromGitter<zacharycarter> but you'd want it to support JS and Nim
00:43:41FromGitter<zetashift> yeah true
00:44:11FromGitter<zetashift> I like the GUN project; seems well constructed and docs are nice
00:58:38FromGitter<krux02> @zacharycarter I like how the gun project claims that it is realtime, when it is implemented in javascript.
00:59:24FromGitter<krux02> they probably understand something else than I, when they talk about realtime :P
01:12:00FromGitter<zacharycarter> @krux02 - yeah there are a lot of hype words in the project's description for sure :P
01:12:43FromGitter<zacharycarter> regardless, I think it's the best open source alternative to things like firebase
01:13:00FromGitter<zacharycarter> https://firebase.google.com/
01:13:10FromGitter<zacharycarter> which also claims to be realtime :P
01:15:03FromGitter<zacharycarter> we could claim the nim version to be more realtime TM
01:16:27*vlad1777d_ quit (Read error: Connection reset by peer)
01:17:36*vlad1777d joined #nim
01:29:19*vlad1777d quit (Remote host closed the connection)
01:30:56*vlad1777d joined #nim
01:35:39*boomshroom joined #nim
01:41:45*MJCaley joined #nim
01:52:08*MJCaley quit (Quit: MJCaley)
02:15:38*S1tiSchu joined #nim
02:18:57*SitiSchu quit (Ping timeout: 240 seconds)
02:19:00*couven92 joined #nim
03:07:07*vlad1777d quit (Ping timeout: 252 seconds)
03:16:14*endragor joined #nim
03:16:16*endragor quit (Remote host closed the connection)
03:16:46*endragor joined #nim
03:42:10*tefter joined #nim
03:57:21*vivus quit (Quit: Leaving)
03:58:03*endragor quit (Remote host closed the connection)
03:58:32*endragor joined #nim
04:01:25*MyMind joined #nim
04:01:27*Sembei quit (Ping timeout: 245 seconds)
04:13:39*Pisuke joined #nim
04:13:51*MyMind quit (Ping timeout: 252 seconds)
04:25:52FromGitter<Varriount> @zacharycarter Wouldn't it be easier to use EFS?
04:27:01*dddddd quit (Remote host closed the connection)
04:30:09*athenot_ joined #nim
04:31:37*athenot quit (Ping timeout: 260 seconds)
04:33:40*RushPL quit (Ping timeout: 256 seconds)
04:45:15*SenasOzys quit (Remote host closed the connection)
04:53:00GitDisc<spaceghost> I don't know, I prefer pouchdb, personally.
04:53:38GitDisc<spaceghost> No it's not designed for 'realtime' but you can achieve it if you know how it works and you can use plugins .
04:55:15GitDisc<spaceghost> Althought I like gun, nolanlawson doesn't feel like he shills his project. Compare the personalities leading the projects. I'm hoping to eventually build a content-addressed merkle-tree patch distributing event stream decentralized datastore.
04:58:27GitDisc<spaceghost> https://github.com/attic-labs/noms is interesting, but in stasis.
04:59:17*endragor quit (Remote host closed the connection)
04:59:44*endragor joined #nim
05:02:42*Pisuke quit (Ping timeout: 245 seconds)
05:04:49*athenot_ quit (Ping timeout: 252 seconds)
05:08:09*r3d9u11 joined #nim
05:10:50GitDisc<spaceghost> But currently, I'm looking at hacking on nexusjs and electron.
05:11:01GitDisc<spaceghost> https://github.com/voodooattack/nexusjs
05:12:36*elyort joined #nim
05:12:36GitDisc<spaceghost> I have not yet decided on nexusjs with webkit or cooking some stuff up closer to electron's home stack.
05:12:43*elyort left #nim (#nim)
05:21:01*Pisuke joined #nim
05:25:17*yglukhov joined #nim
05:29:53*yglukhov quit (Ping timeout: 256 seconds)
05:46:43*tefter quit (Remote host closed the connection)
05:50:57*couven92 quit (Ping timeout: 248 seconds)
05:55:19*r3d9u11 quit (Remote host closed the connection)
05:58:56*boomshroom left #nim (#nim)
06:18:53*nsf joined #nim
06:25:41*endragor quit (Remote host closed the connection)
06:39:32*do_not_turn_off joined #nim
06:41:00*do_not_turn_off quit (Client Quit)
06:44:29FromGitter<gogolxdong> @FedericoCeratto around?
06:54:34*endragor joined #nim
07:11:34*endragor quit (Remote host closed the connection)
07:12:04*endragor joined #nim
07:12:12*endragor quit (Remote host closed the connection)
07:16:05*endragor joined #nim
07:21:40*endragor quit (Remote host closed the connection)
07:22:10*endragor joined #nim
07:25:15*el_tejon joined #nim
07:50:36*PMunch joined #nim
07:57:36*PMunch_ joined #nim
08:00:34*PMunch quit (Ping timeout: 260 seconds)
08:06:38*PMunch__ joined #nim
08:09:34*PMunch_ quit (Ping timeout: 256 seconds)
08:12:34*el_tejon quit (Quit: el_tejon)
08:12:58FromGitter<mratsim> @araq, @dom96 could you review this OpenCL PR: https://github.com/nim-lang/opencl/pull/3, using an untyped template called "check" breaks lots of things especially the unittest module.
08:25:33*smt` joined #nim
08:29:25*smt quit (Ping timeout: 252 seconds)
08:29:30*jaco60 joined #nim
08:31:40*Arrrr joined #nim
08:31:40*Arrrr quit (Changing host)
08:31:41*Arrrr joined #nim
08:34:09*rokups joined #nim
08:46:03*el_tejon joined #nim
08:47:35*sendell joined #nim
08:48:00*yglukhov joined #nim
08:52:35*endragor quit (Remote host closed the connection)
08:53:06*endragor joined #nim
09:00:02*Sembei joined #nim
09:00:42*vlad1777d joined #nim
09:01:53*Pisuke quit (Ping timeout: 248 seconds)
09:05:26*el_tejon quit (Quit: el_tejon)
09:07:44*PMunch joined #nim
09:08:27*rauss quit (Ping timeout: 240 seconds)
09:10:05*PMunch__ quit (Ping timeout: 240 seconds)
09:10:30*floppydh joined #nim
09:20:48*tongir joined #nim
09:24:59*endragor quit (Remote host closed the connection)
09:25:32*endragor joined #nim
09:29:27*yglukhov quit (Remote host closed the connection)
09:34:40*yglukhov joined #nim
09:35:25*Yardanico_ joined #nim
09:36:04*Vladar joined #nim
09:36:38*tongir quit (Quit: Lost terminal)
09:43:51*Yardanico_ quit (Read error: Connection reset by peer)
09:44:25*PMunch_ joined #nim
09:45:10*PMunch quit (Read error: Connection reset by peer)
09:46:26*PMunch__ joined #nim
09:49:05*PMunch_ quit (Ping timeout: 240 seconds)
10:06:20*SenasOzys joined #nim
10:06:49Araqhttps://golang.org/pkg/net/http/httputil/?m=all#ClientConn
10:06:57Araq"We should have deleted it before Go 1."
10:07:11Araqomg, others have deprecated stuff in their stdlibs
10:08:21Araqsomething was not yet perfect and yet they called it 1.0. Can we learn from them?
10:17:45FromGitter<survivorm> The point is, software's never perfect
10:18:17FromGitter<survivorm> so, sometimes it's just a time to stop and release, no matter what
10:18:40FromGitter<survivorm> And for nim, i think, it's about time
10:19:03FromGitter<krux02> well, C is perfect. The fact that `puts` puts a newline and `fputs` does not, is a feature, not inconsistency.
10:19:43FromGitter<survivorm> You bet C compilers have no errors? Or do you mean C as a concept?
10:19:58FromGitter<krux02> no it was sarcastic
10:20:08FromGitter<survivorm> Ah, i see
10:21:15FromGitter<krux02> C macros are a preprocessor that just used to process text, until C99 where you can implement static dispatch in C preprocessor.
10:22:47FromGitter<krux02> all I want to say is that C is old and crufty, but it din't change for a very long time and everybody got just used to it. So things seem better than they are.
10:24:39FromGitter<survivorm> Yeah, i see your point. Even imperfect tool is often tool you need now
10:25:19FromGitter<survivorm> Almost every time you have no time to wait till it's perfect
10:25:48FromGitter<survivorm> (which is essentially never)
10:26:49FromGitter<survivorm> Game dev is often falling in this trap - they have only one release attempt - so they need to make perfect enough in a reasonable time
10:27:02FromGitter<survivorm> [and spending]
10:28:46FromGitter<krux02> well for games sometimes I wish the times back of ROMS. Meaning when you release a game, it's done. There is no fixing after release. One reason I don't buy games after release. They rare in bay quality (and they are overpriced).
10:29:01FromGitter<krux02> I don't get it why I should pay more for a worse experience.
10:31:59*yglukhov quit (Remote host closed the connection)
10:32:30ArrrrIs more exciting when everybody is talking about X
10:34:04*tongir joined #nim
10:36:21dom96It's about getting it as close to perfect as possible ;)
10:36:35dom96but yeah, we should release v1 soon
10:37:00jaco60:)
10:37:24tongirOooh, exciting!
10:37:47dom96First though is v0.18.0
10:38:59dom96which reminds me, Araq: two remaining problematic modules in the stdlib: parseopt2 and nre
10:44:19Araqnre: add a {.deprecated.} statement?
10:44:47Araqparseopt2: why do we have that?
10:45:21FromGitter<mratsim> yeah please release v0.18 … too many improvements not in stable, especially for static
10:45:39dom96Araq: We have to fix something in parseopt to remove parseopt2 I think
10:48:21dom96https://github.com/nim-lang/Nim/issues/6818
10:49:03dom96I'll try to take care of it after my lecture
10:54:12Araqdom96, let me do it
10:54:39dom96okay
10:54:46dom96but take the comments on that issue into account
10:58:17*PMunch__ is now known as PMunch
10:58:43PMunchWhat's the deal with this error message: Error: no surrounding array access context for '^'
10:58:55PMunchI was trying to use [1..^1] on a seq
10:59:12Araqactually ... how can we fix https://github.com/nim-lang/Nim/issues/4620 ?
10:59:39Araq"C:\foo\dir with spaces" is a valid thing on windows
11:00:36Araqwe can make it accept escape sequences on posix only but then parseopt's behaviour is not consistent
11:02:36PMunchWell it's consistent in that it accepts the platform specific way of doing things
11:02:47Araqbesides, escapes are the shell's business on Posix
11:03:03Araqand on Windows we follow MS's spec for command line splitting
11:03:16Araq(yes, there is such a thing)
11:03:46Araqah I misunderstand the problem
11:04:02Araqit's not about the \'s
11:04:44Araqhmm no I don't
11:11:31*floppydh quit (Quit: WeeChat 2.0.1)
11:15:32AraqPMunch, devel fixed that ^ bug
11:21:12FromGitter<krux02> Araq: I realized your classify for floats does not work when the backend is compiled with -ffastmath
11:21:48FromGitter<krux02> (x != x) is optimized out as false, when -ffastmath is on.
11:23:54Araqwhere do we still use this condition to check for nan?
11:31:01*xkapastel quit (Quit: Connection closed for inactivity)
11:31:43*smt` quit (Ping timeout: 248 seconds)
11:34:04tongirHey folks, is there an operator for bitwise complement in nim?
11:34:26FromGitter<mratsim> not?
11:34:51FromGitter<mratsim> If you do “not x” it should work for all primitive types
11:35:22FromGitter<krux02> tongir: yes `not` works on integers as bitwise not.
11:35:48FromGitter<mratsim> see here: https://nim-lang.org/docs/system.html#not,int
11:36:11FromGitter<krux02> Araq: Well I copied that implementation (x!=x) into my refactoring of formatFloat. So I introduced a bug
11:36:50tongirThanks guys! Must have missed that XD
11:38:06FromGitter<krux02> then I saw for alternatives. There is an isnan for c99, and c++11, doesn't work on older compilers. Then you can do bitpattern checks, but the casting to an integers could faild when the endianness of integers and floats mismatches, or if the target platform does not use IEEE floating point standard.
11:59:53*SenasOzys quit (Ping timeout: 252 seconds)
12:00:37*rockcavera quit (Ping timeout: 245 seconds)
12:00:56PMunchAh okay, thanks Araq
12:01:05*vlad1777d quit (Ping timeout: 240 seconds)
12:02:27*Snircle joined #nim
12:10:55*yglukhov joined #nim
12:13:07*SenasOzys joined #nim
12:14:48PMunchHmm, "".high == -1 is that right?
12:15:33PMunchOn stable it's 0
12:15:38*yglukhov quit (Ping timeout: 268 seconds)
12:16:05Arrrr-1 makes more sense
12:16:40PMunchWell I would expect myString[0 .. myString.high] to always return the full string
12:17:15PMunchBut I agree that trying to for example get myString[myString.high] and get an out of bounds error would be weird
12:17:27PMunchWell, you'd get that with -1 as well..
12:20:25PMunchHmm, I tried to "choosenim stable" and that gives 0, but when I tried to go back with "choosenim #devel" it still got 0. Was there a commit in the few minutes it took to go back and forth? :P
12:32:01FromGitter<zetashift> Nim playground report -1
12:32:05FromGitter<zetashift> reports*
12:32:46PMunchHuh, so it does
12:33:19Araqhigh always returns -1 so that 0 .. -1 iterates 0 times
12:34:17Araqand IMO myString[0..high] should produce ""
12:34:23Araqif the string is empty
12:35:10Araqecho ""[0 .. -1]
12:35:10Araq doesn't crash for me
12:36:45PMunchHmm, my error might have been somewhere else
13:03:09*rokups quit (Quit: Connection closed for inactivity)
13:03:29*dddddd joined #nim
13:12:27dom96PMunch: choosenim doesn't update your "channels" when you switch
13:12:57dom96so new commits won't affect your installation unless you run "choosenim update devel"
13:13:10dom96`devel` == `#devel` btw
13:13:51PMunchI did run update
13:13:59PMunchSo it should've updated
13:14:33*endragor quit (Remote host closed the connection)
13:16:02*endragor joined #nim
13:17:38dom96ahh ok
13:18:04dom96Araq: Any luck with parseopt?
13:20:35*endragor quit (Ping timeout: 240 seconds)
13:20:48dom96hrm, I don't suppose we have @flaviut here?
13:20:57*yglukhov joined #nim
13:25:21*yglukhov quit (Ping timeout: 248 seconds)
13:30:31*endragor joined #nim
13:30:34*endragor quit (Remote host closed the connection)
13:32:16*endragor joined #nim
13:36:16*rockcavera joined #nim
13:52:16*Arrrr quit (Read error: Connection reset by peer)
13:59:41*athenot joined #nim
14:00:36FromGitter<zetashift> @Araq btw the nimgrab thing of yesterday was fixed by removing single quotation marks around the url(from which to download) in the nimble file
14:01:22*endragor quit (Remote host closed the connection)
14:06:47*SenasOzys quit (Ping timeout: 260 seconds)
14:11:15*athenot_ joined #nim
14:12:17*athenot quit (Ping timeout: 245 seconds)
14:12:39FromGitter<krux02> @Araq: I am still thinking of this list comprehension thing, because list comprehension how it is implemented right now just makes things horrible. I try to hack in a deprecation path.
14:14:54FromGitter<krux02> I get the error now: "trecursive_generic_in_compiles.nim(95, 15) Error: in call 'lc' got -1, but expected 2 argument(s)" is there a way that I can overload this call to lc with -1 arguments and do some magic there?
14:17:55*SenasOzys joined #nim
14:21:12*athenot_ quit (Remote host closed the connection)
14:21:42*craigger quit (Quit: bye)
14:21:50*athenot joined #nim
14:21:51*craigger joined #nim
14:23:20FromGitter<zacharycarter> @Varriount something like S3 or EFS would be fine - but we'd have to retrieve the data whenever it was updated. Our goal is not to have to retrieve it with every request, but get up an updated copy whenever it changes and keep it in memory.
14:23:36*MJCaley joined #nim
14:26:12*craigger quit (Client Quit)
14:27:40FromGitter<krux02> Hmm, I got it so far to display the error message: "list comprehension syntax got changed. replace [] with () now!". The question is, is that good enough?
14:28:31*craigger joined #nim
14:32:27jaco60yet another newbie question: in Nim, 'import foo' is equivalent to Python's 'from foo import *' and Nim's 'from foo import nil' is equivalent to Python's 'import foo', right ?
14:33:33FromGitter<krux02> Well I don't know python well enough, but `import foo` lets you use all functions defined in foo without a prefix
14:33:45PMunchI think so yeah
14:39:03dom96yep
14:39:46jaco60Thanks
14:44:57FromGitter<narimiran> @krux02 has list comprehension syntax changed recently? we use () instead of []?
14:45:48FromGitter<krux02> well, my pull request would do that
14:46:04FromGitter<krux02> because the way list comprehension is implemented is a horrible hack that causes problems.
14:46:39FromGitter<krux02> @narimiran do you use list comprehension a lot?
14:47:15FromGitter<narimiran> @krux02 in python yes, in nim no - because of ugliness + not in stdlib
14:47:22*sz0 joined #nim
14:47:49FromGitter<krux02> yea, I thought so.
14:47:55FromGitter<narimiran> if LC become more usable/pretty, i would use them much more in nim
14:48:24FromGitter<krux02> I was looking in github if people use list comprehension, and they do in test projects where they treat nim a toy to try out things, but in bigger projects, no.
14:48:52FromGitter<narimiran> what's your synax proposition?
14:49:09*fvs joined #nim
14:49:14FromGitter<krux02> well I don't have one. I just don't use it, because it allocates a new seq.
14:49:25FromGitter<krux02> I try not to do that
14:49:35FromGitter<krux02> and when I do, I just to it in a loop
14:50:37FromGitter<krux02> all I changed was instead of `lc[x | ...]` it is `lc(x | ...)` the rest of the uglyness is still the same.
14:51:04FromGitter<narimiran> not good enough :)
14:51:16FromGitter<krux02> I didn't try to make it better
14:51:23FromGitter<krux02> I just tried to get less in my way.
14:51:40*nsf quit (Quit: WeeChat 2.0.1)
14:51:42fvswhat's the opposite/negative of: if a in A. Both if not a in A, and, if a not in A fail for me.
14:51:44FromGitter<krux02> the pure existence of list comprehension get's in my way. That's the problem.
14:52:03FromGitter<narimiran> @fvs: `notin` is a keyword to use
14:52:20fvsnice, thanks much.
14:53:42FromGitter<narimiran> @krux02 use `map` or `mapIt` instead? problem solved? :D
14:54:48FromGitter<krux02> @narimiran well the problem is that my pull request to fix a bug caused a problem with list comprehension.
14:55:06FromGitter<krux02> basically I make list comprehension not compile anymore.
14:55:27FromGitter<narimiran> "nice, Ron" :D
14:55:28FromGitter<krux02> and that is generally a bad thing, regression and so and so
14:56:01FromGitter<krux02> "nice, Ron"? who is Ron?
14:56:42FromGitter<krux02> Ron Gilbert? Ron Weasley?
14:56:50FromGitter<krux02> Ron Away?
14:56:55FromGitter<k0pernicus> Weasley, for sure
14:59:07*yglukhov joined #nim
14:59:08*floppydh joined #nim
15:02:52*endragor joined #nim
15:03:02dom96Anybody have anything against moving 'nre' out of the stdlib?
15:03:19*athenot quit (Remote host closed the connection)
15:03:27*yglukhov quit (Ping timeout: 240 seconds)
15:04:06FromGitter<andreaferretti> I never understood exactly how it differs from re :-)
15:04:36FromGitter<andreaferretti> so ok by me
15:07:45*athenot joined #nim
15:08:38FromGitter<narimiran> ron: https://www.youtube.com/watch?v=MUINFs1Sp94
15:10:15fvsircbot should title this link
15:10:36*nsf joined #nim
15:11:25*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
15:13:06*rokups joined #nim
15:17:21FromGitter<k0pernicus> @dom96 I just saw the new version of `choosenim`: 👍
15:17:54dom96:D
15:25:05dom96I need to find some more emojis to use in my twitter announcements, they really do seem to draw in more likes/RTs
15:28:36FromGitter<krux02> I don't really like emojis. There are 100 different smiles that all look the same to me, and when I want to express an emotion, it's not there.
15:29:12FromGitter<krux02> 🤷
15:30:24*endragor quit (Remote host closed the connection)
15:30:44*r3d9u11 joined #nim
15:32:02*MJCaley quit (Quit: MJCaley)
15:32:27FromGitter<krux02> 🤔🤷🔥 and this one that shows an emotion dependent on your platform: 🙄
15:33:36PMunchDependent on platform?
15:33:44PMunchThat one is named "Face with rolling eyes"
15:35:05FromGitter<krux02> yea and depending who draw that emoji for you, you have a face that looks at you like "not that shit again" or a happy smile with not focused eyes.
15:35:45dom96This is why ASCII emoticons are still superior.
15:36:08FromGitter<k0pernicus> so… you think you are sending a nice emoji and the receiver gets… a poop !? :-O
15:36:23FromGitter<krux02> yes
15:36:46dom96well, it's not that bad
15:36:47FromGitter<krux02> still my favorite: ¯\_(ツ)_/¯
15:37:15dom96To be fair, there is some room for misinterpretation of ASCII emoticons too
15:37:26FromGitter<krux02> yes
15:37:38FromGitter<krux02> that's why you have internet memes
15:38:29FromGitter<krux02> just put your impotion in a gif from giphy.com
15:38:40FromGitter<k0pernicus> God save Doge
15:43:32*miran joined #nim
15:48:34dom96Dayuum, 1003 commits since v0.17.2
15:56:56*PMunch quit (Quit: Leaving)
15:59:17FromGitter<krux02> how was the syntax again to explicitly not import a symbol?
15:59:43dom96'... except symbol'
15:59:51FromGitter<k0pernicus> @dom96 More important: 335 contributors for 17 releases :-)
15:59:51FromGitter<krux02> thanks
16:00:14FromGitter<k0pernicus> As a comparison: go = 1013 contributors for 205 releases
16:00:25FromGitter<k0pernicus> What a beautiful Open Source language he...
16:00:33Araqwe're taking off :-)
16:00:53Araqso ... krux02 your stuff is actually critical for 0.18
16:01:13Araqeither we live with the "your [] now need to support backwards indexes explicitly"
16:01:35Araqor with your superior solution that breaks list comprehensions
16:01:53miranbreak LC then
16:02:21miranthey are not very useful the way they are now
16:02:22dom96why do we need to break LC?
16:06:17*rauss joined #nim
16:06:27dom96Hrm, I fear that a lot of code will break because of this change to `[x .. y]` (the fact that it now raises an exception)
16:06:35dom96Many of my projects are affected
16:07:52*floppydh quit (Quit: WeeChat 2.0.1)
16:09:33*r3d9u11 quit (Ping timeout: 240 seconds)
16:10:41FromGitter<krux02> well the problem is that lc is implemented with a macro that overloads `[]`.
16:11:13FromGitter<krux02> there is a `[]` template now for backwards index in system now.
16:11:25FromGitter<krux02> meaning the compiler wants to typecheck the second argument of `[]`
16:11:54*yglukhov joined #nim
16:12:01FromGitter<krux02> the dsl for list comprehension cannot be typechecked and there is the error.
16:12:09*floppydh joined #nim
16:12:24FromGitter<krux02> just use a different symbol for list comprehension that the index operator, and the problem is solved.
16:12:59FromGitter<krux02> dom96: maybe you can checkout my branch and test in on your code.
16:13:01*xet7 quit (Quit: Leaving)
16:13:06FromGitter<krux02> I make it emit a nice error message.
16:13:19*MyMind joined #nim
16:25:26*NimBot joined #nim
16:26:09FromGitter<krux02> I would like to
16:28:42*yglukhov joined #nim
16:29:46*Pwntus joined #nim
16:30:56*Slowmotion joined #nim
16:32:18*mrshu1 joined #nim
16:34:30*athros joined #nim
16:38:34dom96Yeah, just remove lc altogether please
16:38:38FromGitter<krux02> dom96: are you sure you use list comprehension? searched the identifier `lc` on all your github repositories, and there is nothing. This is the search query I used: "language:nim user:dom96 lc"
16:38:55dom96huh? Did I say I was using list comprehensions?
16:39:22FromGitter<krux02> "Many of my projects are affected" I thought you were talking about list comprehension
16:40:08*natrys joined #nim
16:40:31dom96No, I was talking about what I described above my message
16:41:10FromGitter<krux02> the part with `[x .. y]` I don't understand it. what raises an exception?
16:45:10dom96!eval echo("abcd"[0 .. 42])
16:45:12NimBotabcd
16:45:18dom96That raises an exception in devel
16:45:19FromGitter<krux02> Well it is just a few lines of code to make list comprehension use () instead of []. The only problem is thet the error message will be not helpful at all. Then I got a hack to support an error message thet tells you actually to change [] to (), but that also is very much a hack.
16:45:54FromGitter<krux02> dom96: well it should raise an exception
16:45:59FromGitter<krux02> it is out of bounds
16:47:56*endragor joined #nim
16:49:40dom96yes, it should
16:50:45FromGitter<krux02> I did not know about this eval and the nimbot
16:51:28*endragor_ joined #nim
16:51:29FromGitter<krux02> !eval staticExec("format c:")
16:51:30NimBotCompile failed: in.nim(1, 11) Error: expression 'staticExec("format c:", "", "")' is of type 'string' and has to be discarded
16:52:01FromGitter<krux02> !eval discard staticExec("format c:")
16:52:03NimBotCompile failed: in.nim(1, 19) Error: 'staticExec' can only be used in compile-time context
16:52:30dom96lol
16:52:38dom96!eval echo(hostOS)
16:52:40NimBotlinux
16:52:48dom96even if that did have a chance of working...
16:52:51dom96it wouldn't
16:53:10*endragor quit (Ping timeout: 240 seconds)
16:53:34FromGitter<Vindaar> So no chance using ``rm -rf / ``
16:53:38FromGitter<Vindaar> too bad, haha
16:55:33FromGitter<krux02> !eval removeDir("/")
16:55:34NimBotCompile failed: in.nim(1, 1) Error: undeclared identifier: 'removeDir'
16:55:58FromGitter<krux02> !eval import os; removeDir("/")
16:56:02NimBot<no output>
16:56:06FromGitter<krux02> hmm
16:56:27*sz0 quit (Quit: Connection closed for inactivity)
16:56:31FromGitter<krux02> !eval echo("I am still here and alive")
16:56:33NimBotI am still here and alive
16:56:41FromGitter<krux02> damn
16:56:50FromGitter<andreaferretti> :-)
16:57:39FromGitter<krux02> I could still try the fork bomb :P
16:57:46FromGitter<stisa> @krux02 I think it uses play.nim-lang.org to compile, which uses docker
17:01:36FromGitter<krux02> !eval import ospaths; for key,value in envPairs(): echo key, ":", value
17:01:39NimBotHOSTNAME:98a6ec1e4183↵TERM:xterm↵PATH:~/.nimble/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin↵PWD:/↵SHLVL:1↵HOME:/root↵_:./usercode/in
17:02:10dom96This is an odd thread: https://forum.nim-lang.org/t/3588
17:03:19FromGitter<krux02> he has a profile picture. Something I was not able to do.
17:03:29FromGitter<krux02> There is some effort in his profile.
17:07:14*r3d9u11 joined #nim
17:09:43*athros quit (Ping timeout: 256 seconds)
17:15:36*floppydh quit (Remote host closed the connection)
17:16:29*floppydh joined #nim
17:17:56*athros joined #nim
17:18:22*athros quit (Client Quit)
17:20:37*athros joined #nim
17:25:40FromGitter<zacharycarter> !eval echo("I am still here and alive")
17:25:42NimBotI am still here and alive
17:25:48FromGitter<zacharycarter> woohoo!
17:30:44GitDisc<spaceghost> How sandboxed is the bot?
17:31:47*PMunch joined #nim
17:32:55*SenasOzys quit (Remote host closed the connection)
17:34:51*SenasOzys joined #nim
17:35:09*rockcavera quit (Remote host closed the connection)
17:35:55*rockcavera joined #nim
17:36:32*endragor_ quit (Remote host closed the connection)
17:36:43FromGitter<zacharycarter> if you find a way to defeat him - you'd be the first :P
17:43:57GitDisc<spaceghost> Source-available, and is it fair to query him as long as I promise to not do anything particularly nasty if I manage anything clever?
17:44:45*girvo quit (Quit: Ping timeout (120 seconds))
17:45:13*girvo joined #nim
17:45:21*sendell quit (Remote host closed the connection)
17:48:13*tongir quit (Ping timeout: 240 seconds)
17:48:31*tongir joined #nim
18:01:03PMunchHmm, dom96: http://ix.io/QGj
18:01:41GitDisc<treeform> looking some more into nim packages, 78 have tests, while 62 don't define that they have tests, but they have a test folder or file... I think there is a big issue of people not hooking tests target in nimble
18:02:03GitDisc<treeform> looking some more into nim packages, 78 have tests, while 62 don't define that they have tests, but they have a test folder or file... I think there is a big issue of people not hooking tests target in nimble files.
18:02:08dom96PMunch: :(
18:02:15dom96PMunch: Is this latest choosenim?
18:02:30PMunchchoosenim v0.3.0 (2017-09-22 23:26:51) [linux/amd64]
18:02:57PMunchHmm, so no apparently
18:03:26*yglukhov quit (Remote host closed the connection)
18:04:37PMunchHmm, does nimble have an update feature?
18:05:22dom96no
18:06:01dom96do try choosenim 0.3.2
18:06:08dom96if you get a chance
18:06:20PMunchHmm, How did I install choosenim..
18:06:30PMunchIt's placed in .nimble/bin
18:06:45PMunchBut according to nimble list -i I don't have choosenim installed
18:07:03dom96You used the 'curl' command
18:07:07dom96which puts it there
18:07:13PMunchhistory | grep choosenim
18:07:18PMunchWoops, wrong window
18:07:36PMunchAh yeah: curl https://nim-lang.org/choosenim/init.sh -sSf | sh
18:07:42PMunchSo how do I update?
18:07:54*floppydh quit (Quit: WeeChat 2.0.1)
18:07:55dom96just run that again
18:08:41PMunchAh nice
18:09:23PMunchHmm, a bit less verbose. But the same error: http://ix.io/QGw
18:09:31dom960.3.2 now has `choosenim update self`
18:09:37dom96so you won't need to do that again
18:10:04FromGitter<krux02> I never used choosenim, I alwas use on the git repo directly and checkout the branches, but do I understand this correctly: I install nim. nim installed nimble. nimble installs choosenim and choosenim installs nim?
18:10:15dom96no
18:10:20dom96choosenim installs everything
18:10:31dom96sucks that it still fails :(
18:10:38FromGitter<krux02> hmm
18:11:21FromGitter<krux02> well I think I stick to my system.
18:11:49PMunchchoosenim is actually pretty great
18:11:54FromGitter<krux02> Or does choosnim also works well with forks and custom branches and stuff?
18:12:31dom96krux02: you should probably stick with your system
18:12:33PMunchWell you da have choosenim <folder>
18:12:54dom96choosenim is more for people starting out with Nim
18:13:06dom96it can't handle git repos yet
18:13:15FromGitter<krux02> ok
18:15:32dom96PMunch: so you're on Linux right?
18:15:36PMunchYup
18:15:40PMunchHold on, I'll do a restart
18:16:04PMunchJust updated a bunch of stuff and I've might've put my system in a weird state
18:16:11*PMunch quit (Quit: leaving)
18:16:48*athenot quit (Ping timeout: 265 seconds)
18:16:58*PMunch joined #nim
18:17:20*MJCaley joined #nim
18:17:27PMunchNope
18:17:31PMunchStill the same error
18:22:26PMunchopenssl version -v
18:22:31PMunchOpenSSL 1.1.0g 2 Nov 2017
18:22:31GitDisc<spaceghost> I compile from source myself and use `asdf` for stable installs.
18:24:09*athenot joined #nim
18:26:31*yglukhov joined #nim
18:27:58*r3d9u11 quit (Remote host closed the connection)
18:28:18*fvs left #nim ("ERC (IRC client for Emacs 25.3.1)")
18:29:59dom96PMunch: can you try downloading https://github.com/nim-lang/Nim/archive/devel.zip using Nim's httpclient?
18:30:10dom96see if you can reproduce the issue
18:30:28dom96(using devel, choosenim is compiled using 0.17.2)
18:30:57*yglukhov quit (Ping timeout: 240 seconds)
18:32:19*athros left #nim (#nim)
18:33:35FromGitter<zacharycarter> space-ghost: https://github.com/zacharycarter/nim-playground && https://github.com/zacharycarter/nim-playground-frontend
18:33:37*athenot_ joined #nim
18:34:09FromGitter<zacharycarter> and feel free to do whatever you want with the site / bot :P
18:34:48PMunchdom96, same error
18:35:11dom96PMunch: on devel?
18:35:43PMunchWell, not on the latest devel. That's what I was trying to do with choosenim
18:36:17dom96I think this has something to do with openssl 1.1.0
18:37:14*athenot quit (Ping timeout: 276 seconds)
18:38:40GitDisc<spaceghost> zacharycarter: Thank you. I'll look and see if I find anything. If it's a big problem, can I send an encrypted report to an email with a public key, or do you not care if it's public and posted on github issues or something?
18:39:10PMunchdom96, hmm. I'm having some trouble installing the devel version as well
18:39:23dom96how old is your devel?
18:39:41PMunchNot entirely sure
18:40:02PMunchIt doesn't give me more than 0.17.3
18:40:10FromGitter<zacharycarter> spaceghost: np! if you find a vulnerability - feel free to go ahead and file a github issue. I don't think the site / bot is so actively used that we need to be that careful - but thank you for considering it :)
18:40:35PMunchIs there a way to get the git hash or something?
18:40:56FromGitter<zacharycarter> nim --version should provide it
18:41:14PMunchhttp://ix.io/QHd
18:41:17PMunchThat's all I get
18:42:34GitDisc<spaceghost> I got summoned into the ruby world for a bit. But I think I'm going to cut a whole new version that's implemented as a socket using nim with TLS support that just acts like a sockety middleware component for `erichmenge/signed_form` so it's more universal, you write your ruby/config, you run your socket server, you connect downstream from like with rack/rails so you only process requests through your stack that are signed for the routes you co
18:42:34GitDisc<spaceghost> gured in the socket server.
18:43:06FromGitter<Vindaar> @PMunch http://ix.io/QHe is what I get
18:43:26*yglukhov joined #nim
18:43:29FromGitter<zacharycarter> maybe it's because I'm building from source rather than using a pre-built binary? not sure...
18:43:55PMunchYeah I get that if I do "choosenim stable"
18:45:32GitDisc<spaceghost> I can set my prefix to `~/.asdf/installs/nim/<version>` and install my source builds to a place where my version manager picks them up.
18:45:47dom96'asdf' is the strangest name ever
18:46:21*Slowmotion quit (Quit: Estou usando mIRC-rockcavera / Seu script sem frescura! / Baixe já em www.rockcavera.co.nf)
18:46:23PMunchdom96, it's the keys under qwerty
18:46:25federico3'aoeu' for me
18:46:35PMunchfederico3, ditto :)
18:46:49dom96makes a bit more sense
18:47:19GitDisc<spaceghost> Just alias? :D
18:48:20FromGitter<krux02> federico 'uiae' for me 😄
18:48:38miran'arst' for me
18:48:49federico3krux02: malt layout perhaps?
18:49:03FromGitter<krux02> no, neo
18:49:23FromGitter<krux02> 'de neo' to be specific
18:49:38federico3oh, it's very different
18:49:44GitDisc<spaceghost> Why the interesting layouts? Are they for other languages than English or some other thing? I would look them up, but my potato is boiling as it is.
18:49:52*athenot_ quit (Ping timeout: 240 seconds)
18:49:59miranspaceghost: my is colemak layout (english)
18:50:21PMunchspaceghost, mine is Dvorak (Norwegian)
18:50:27mirani switched couple of months ago, and now i'm sad why didn'd i do that even earlier
18:50:41federico3spaceghost: mostly because qwerty is inefficient for all languages
18:51:03FromGitter<krux02> my is for german (äöü) english, programming, and math symbols νρτδε
18:51:20PMunchMost countries uses QWERTY, some german countries uses QWERTZ, and French speaking countries uses AZERTY. All very similar layouts
18:51:21FromGitter<krux02> ∀∃∈Σℕℝ¬∨∧
18:51:32PMunchBut yeah, QWERTY doesn't really make sense for any language
18:51:37miranwow, i never imagined that the small comunity like this one would have so many people use non-qwerty layouts
18:51:44FromGitter<Vindaar> woah, I really need to look at neo again, I guess
18:51:54FromGitter<krux02> well not so common here :p
18:52:24FromGitter<zacharycarter> < born and raised on QWERTY
18:52:43PMunchIt was made to space out the arms of a typewriter so that often pressed keys were less likely to jam when pressed in rapid succession
18:52:53dom96hm, Homebrew uses bintray.com to serve binaries, maybe we should use it too
18:53:01federico3zacharycarter: probably everybody else was "raised" on qwerty. Social inertia is an evil thing.
18:53:45GitDisc<spaceghost> I'm familiar with the history, I just kind of am used to the layout. I used to use my sun microsystems keyboard on the regular so I could just compose anything, but I couldn't quite dedicate to dvorak.
18:54:40GitDisc<spaceghost> I'm sure that I could be an even quicker whack-a-key player with a better layout for US English.
18:54:44PMunchIMHO it's totally worth it
18:54:47FromGitter<krux02> well when you program in qwertz (german) and realize how horrible it is to type {}()[], then you wish for something else.
18:55:02federico3PMunch: same for me
18:55:13FromGitter<krux02> Qwerty is better bit it can't handle äöüß
18:55:22GitDisc<spaceghost> I prefer blank keycap keyboards anyways, so this helps.
18:55:22FromGitter<Vindaar> @krux02 using compose it's fine imo
18:55:29GitDisc<spaceghost> ^
18:55:40FromGitter<krux02> and then I found de neo, and that got me all sorts of symbols I didn't know I was looking for.
18:56:01GitDisc<spaceghost> urxvt has an awesome compose interface for those without a compose.
18:56:04FromGitter<krux02> spaceghost. I have a blank keyboard, too :P
18:56:19FromGitter<krux02> ne neo has compose key, too
18:56:22GitDisc<spaceghost> It's so nice. I went Das for the friendly support.
18:56:23FromGitter<krux02> æ
18:56:27FromGitter<krux02> ø
18:56:31federico3spaceghost: I just ignore the keycaps anyways (e.g. if using a laptop). Free substitution cipher encryption while you type.
18:57:01dom96PMunch: hrm, so I just tried it with openssl 1.1 on macOS and it works with latest devel
18:57:19FromGitter<krux02> since I write purely on neo, I don't realize anymore when the room get's dark in the evening.
18:57:51FromGitter<Vindaar> how did you guys decide which layout to switch to? that's what I found the hardest, when I considered making the switch a couple of years ago
18:57:52FromGitter<krux02> And my perspective on led keyboards has shifted.
18:58:27FromGitter<krux02> well for me it was pretty obvious, because dworak made programming worse and was not optimized for german
18:58:41miranVindaar: i chose colemak because lots of keys stay in the same place, so you don't have to relearn/remap common shortcuts
18:58:48PMunchdom96, that's strange
18:58:50dom96with 0.17.2 it just gets stuck
18:58:54miranthe problem is HJKL and vim
18:58:55dom96in a very odd way
18:59:01FromGitter<krux02> and then there were also a few that only scrabled the key positions, but the most important aspect getting the keys for programming at a nice position, almost no layout cared about.
18:59:12FromGitter<krux02> neo is just the only layout that got everything right.
18:59:13dom96So I'm hoping that federico3's PR fixed this problem
18:59:33GitDisc<spaceghost> Hm, that's an interesting thought. I also code and don't want to depend on my vim config to let me get by without having a comfortable layout.
18:59:38dom96I'll compile choosenim on Linux with devel and we can check if that helps
18:59:51FromGitter<krux02> well most, if I would have ad the option to have the benefits of neo without the reorganized letters, I would have sticked to qwertz. But I did not have that option.
18:59:59FromGitter<krux02> so I just learned the new layout.
19:00:08*Jesin quit (Quit: Leaving)
19:00:24FromGitter<Vindaar> Hm, I guess I need to consider it again. But the thought of having to relearn my emacs keybinding muscle memory makes me scared :P
19:00:40dom96I use the "British - PC" layout, which basically switches where the " and @ are
19:00:49FromGitter<krux02> well I switched to the new layout before learning any of the two emacs and vim
19:00:52*athenot joined #nim
19:00:55FromGitter<krux02> now I learned both, emacs and vim
19:00:55dom96Never fail to be amused when people attempt to write their email on my laptop
19:01:27federico3dom96: they should try mine then :D
19:01:32FromGitter<krux02> the navigation keys on vim are now all over the place, but thanks to new they are obolete anyway, because neo also has a navigation layer :D
19:01:59FromGitter<krux02> no vim required to navigate text on the home row
19:02:39PMunchSo much fun the moment someone is trying to align themselves on your keyboard and you spot the moment they realise that none of the keys are in the spot they're used to
19:03:19GitDisc<spaceghost> Until a cool person shows up with a keyboard with custom firmware that makes you jealous. :(
19:03:21FromGitter<krux02> I once had a game session here at my home and invided three people over, two of them used the same keyboard layout as I do, just one used qwerty. He was confused when he wanted to look for music to play, because nobody except him had a problem
19:03:27federico3PMunch: two keys are: a and m :)
19:03:35FromGitter<krux02> (board game session, computer was for music only)
19:03:36PMunchYup :)
19:04:08*athenot_ joined #nim
19:04:36FromGitter<krux02> spaceghost: what does a keyboard with custom firmware do?
19:04:47FromGitter<Vindaar> Can you still type on QWERTY if you have to? At least decent enough help other people out etc.?
19:04:49FromGitter<krux02> I mean it's still just keys, isn't it?
19:05:09FromGitter<krux02> well I mapped the scroll lock key to switch the layout.
19:05:35*athenot quit (Ping timeout: 252 seconds)
19:05:38FromGitter<krux02> just press that and I am back on qwerty (only for other people who might need to use the computer)
19:05:44FromGitter<Vindaar> I mean on other peoples' computers
19:05:45FromGitter<krux02> the layout is software only.
19:06:00*Jesin joined #nim
19:06:08FromGitter<krux02> ah, yea when I am on other people's computers I do "setxkbmap de neo"
19:06:17FromGitter<krux02> (works for linux only)
19:06:21PMunchdom96, just tried with latest devel
19:06:26PMunchSeems to work fine
19:06:27FromGitter<krux02> but most of my friends use linux.
19:06:31dom96PMunch: yay
19:06:34FromGitter<krux02> At least for work
19:06:49dom96federico3: seems your patch arrived just in time :)
19:07:01federico3dom96: which one?
19:07:04FromGitter<Vindaar> haha, ok. Yeah, but the friends who do may not be the ones who rely most on our help
19:07:05dom96openssl one
19:07:28FromGitter<Vindaar> It's a minor issue, though
19:07:44federico3I just updated #6664
19:07:57GitDisc<spaceghost> Help us krux02, you're our only hope.
19:09:26FromGitter<krux02> the real issue I have, I have a keyboard with blank keys, and I have a ps4. Typing messages on the PS4 is either horrible with the onscreen keyboard, or it is horrible, becaus since I use now now for everything I need to look at the keyboard to write qwerty. I can still type it, but I need to see it. And with my blank keycaps I just don't. And the keyboard that does not have blank keys has a PS2 connector (I don't mean
19:09:26FromGitter... the console in this context)
19:10:03federico3krux02: there are PS2 to USB adapters :)
19:10:18GitDisc<spaceghost> I think I'm going to stick with qwerty for a while until I find a good programming layout for English to try. For now, I can doze while typing to people, especially when TTS converting their responses.
19:10:38dom96federico3: tests are failing though :/
19:11:05federico3dom96: only the one on windows, with an error I've never seen before and looks almost unrelated
19:11:08FromGitter<krux02> well, there are keyboards for 12€ out there, not really an issue, but I think the adapters are not really true adapters, they are just lazy and do nothing, the keyboard is smart and knows when it is connected via ps2 or usb
19:11:21FromGitter<krux02> spaceghost: what should I help you with?
19:11:55dom96federico3: it's failing in the openssl wrapper so it seems quite related :)
19:12:02*endragor joined #nim
19:12:10dom96federico3: try `nim check --os:windows lib/wrappers/openssl.nim`
19:12:14GitDisc<spaceghost> krux02, Not me, I'm using a gutted and stripped down ubanto install for some form of compatibility without being annoying. The people who need your help are the others who don't use lunix.
19:12:49FromGitter<krux02> just be aware that you will never relly be able to get rid of qwerty. onscreen keyboards stay qwerty, and closed systems such as smart TV and play station will not support your custom layout.
19:13:34dom96krux02: Offtopic but what games do you play on your PS4?
19:13:41FromGitter<Vindaar> @krux02 yeah. I'll give it some thought. I mean I can type fast enough, but the idea that typing could be more comfortable (while maybe being faster too) is quite tempting. But in the very near future I cannot justify the switch anyways
19:13:44FromGitter<krux02> well to be honest, the last windows I used was Windows 7 and the last apple I used was an Apple ][
19:13:48*dom96 recently grabbed a refurbished PS4 slim
19:13:55FromGitter<krux02> so I am not much of help for those people
19:14:04FromGitter<krux02> there is a ps4 slim?
19:14:21FromGitter<krux02> I have a ps3 "slim" but compared to a ps2 slim, it is huge
19:15:24FromGitter<krux02> I play Metal Gear Solid 5
19:15:27dom96yep, there is a PS4 slim :)
19:16:03FromGitter<krux02> I played all metal gear solid games until now. And that one I never started until recently where I got it cheap.
19:16:08FromGitter<krux02> That game is a time sink.
19:16:14FromGitter<krux02> the curse of open world.
19:16:27dom96I never played any Metal Gear Solid games
19:16:35*endragor quit (Ping timeout: 252 seconds)
19:16:59FromGitter<krux02> pick any of the metal gear games, they are all great (except Metal gear survive and the metal gear on the NES)
19:17:09dom96So far only have played Uncharted 4 (and Fortnite). Uncharted 4 is brilliant.
19:17:31FromGitter<krux02> well I played Uncharted 2, and it is not really my type of game.
19:17:47FromGitter<krux02> I just hate the protagonist.
19:18:01FromGitter<krux02> All the time I just want to kick him in the balls.
19:18:15dom96PMunch: binary updated, wanna give it a shot?
19:18:21*yglukhov quit (Remote host closed the connection)
19:18:37dom96krux02: hah why?
19:19:16dom96On a side note, it seems that something in devel changed that causes binaries to become 4 times larger
19:19:24FromGitter<krux02> I can't give you objective reasons, but I just think he is an asshole and seeing him getting kicked and punched gives me satisfaction.
19:19:31dom96lol
19:19:36dom96Fair enough
19:19:52FromGitter<krux02> but I played it through the end.
19:20:26FromGitter<krux02> I mean he judges about murderers and nazis, but during the game he kills hundreads of people. He is not the good guy he pretends to be.
19:20:27PMunchYay, dom96 that seemed to work :)
19:20:32PMunchDLing now
19:20:44dom96awesome
19:21:21FromGitter<krux02> great that at least a few people are still on topic :P
19:21:51dom96krux02: it does bother me that there are stages of the game that are impossible to complete without shooting people
19:22:48dom96I spent 30 minutes trying to figure out how to pass one stage via stealth alone and ended up giving up.
19:23:54FromGitter<Vindaar> I've read the same criticism several times, although I've never played any of the Uncharted games. Always sounded to me like any other game where the protagonist is "a nice person" but keeps on murdering people. What makes it different in Uncharted? (it's fair criticism, but for most games)
19:24:14FromGitter<Vindaar> but *valid for most games
19:25:02Araqbtw for me SSL compiles on Windows
19:25:26Araqin fact, I updated the DLLs we ship with nim to OpenSSL 1.1
19:26:04GitDisc<spaceghost> I'm extremely excited to look into nim and capnproto right now.
19:27:13FromGitter<krux02> dom96: do you mean in uncharted?
19:27:50dom96krux02: yeah
19:28:28*Ven`` joined #nim
19:29:01FromGitter<krux02> I don't remember anymore, but I just remember that in the beginnig the characer was like "aaah never kill people aaah so evil aaah would never do that." In the end I was just walking around killing everything and everybody.
19:29:58dom96Makes sense
19:30:06dom96He didn't say things like that in this instalment
19:30:23FromGitter<krux02> friend got stuck on the elevater, "wait a moment I will help you" meanwile killing agaian a few people, then saving her from the elevater. And what do they talk about. That ther was a shooting, I almost died and that I did kill people? nope. Killing people is normal. No need to mention it.
19:30:38dom96so if I didn't play previous metal gear solid games, will Phantom Pain still make sense?
19:31:09shashlickdo any of you use devdocs.io for nim?
19:31:20FromGitter<Vindaar> haha, that does indeed sound kind of ironic
19:31:40miranshashlick: i did before
19:32:02FromGitter<krux02> I recommend you play ground zeros and then phantom pain. But there is no metal gear solid game that does not reference back to a previous game. And even for people who do know everything it doesn't make a lot of senso for them either. It's very chaotic.
19:32:17dom96heh ok
19:32:20FromGitter<krux02> but still consistent since 1987, I think that's when the series started.
19:32:54shashlickmiran: I really like the interface - one tab dedicated to programming docs, I do miss Nim's links to the actual source though
19:33:02Araqwe have #nim-offtopic
19:33:12FromGitter<krux02> but there is nobody :P
19:33:41miranshashlick: yes, links to source are sometimes very helpful
19:38:04Araqdid we decide on the ^ problem?
19:40:07PMunchOn what ""[0..^1] should return?
19:40:22Araqno, that one is clear
19:40:40Araqon what to do with krux02's superior but breaking solution
19:41:29PMunchWhich was?
19:41:53miranLC are not used very often + they are in future module which says "This module implements experimental features ..."
19:42:31miranbreak LC for now, and later we will probably have better/cleaner/nicer syntax for LC
19:42:43*Snircle joined #nim
19:45:28AraqI agree
19:45:41Araqplus LC always was ugly with the explicit type annotation
19:46:13Araqbut we can make a compromise and introduce -d:nimGimmeLC
19:46:20Araqso that people can compile with 0.18
19:47:37*yglukhov joined #nim
19:53:15FromGitter<krux02> Araq: not really
19:53:30FromGitter<krux02> the way it is implemented we can't do -d:nimGimmeLC
19:54:27FromGitter<krux02> well it would be very complicated.
19:54:30FromGitter<krux02> and ugly
19:54:36FromGitter<krux02> I have to go.
20:02:33Araqwell it would be your implementation and mine
20:02:53dom96so what do we need for the release?
20:02:59dom96is parseopt taken care of?
20:03:11dom96I'm going to move `nre` to a nimble package
20:05:24Araqworking on parseopt
20:05:31Araqcan't reproduce the bug
20:07:02dom96I worry someone will not be happy about the removal of nre
20:07:40Araqwell you can leave it
20:07:43Araqas it is
20:08:05Araqand add to the docs neither re nor nre are the last word here
20:08:12Araqdunno.
20:08:45dom96"and add to the docs neither re nor nre are the last word here" i'm confused by this sentence
20:09:47Araqthat both are kinda meh, being based on pcre
20:11:17dom96It's about the API
20:11:20dom96not what they are based on
20:11:35dom96even if we adopt a natively written regular expression module we will still adopt it to the dominant API
20:11:49Araqwell API-wise I like re.nim
20:14:27Araqbut we need Option[string] thing for the matches :-/
20:14:46Araqin the rare cases where you care about match of 0 length vs no match
20:15:59dom96okay, we need to discuss this I think
20:16:03dom96let's keep it there for now
20:16:09Araqok.
20:16:45dom96Araq: Can you write an issue and explain what the issue is that nre solves?
20:16:52dom96and RFC :)
20:17:01Araqthinking about it, we only need a variant that returns integer pairs
20:17:16dom96yes, I'm sure it's easy to fix in 're'
20:17:29Araqthen it can return -1, -1 for no match and something else for a match of zero length
20:17:37dom96But the fact that 'nre' is in the stdlib proves that rushed decisions have been made too much
20:17:39Araqand for superior efficiency we need that one anyway
20:17:42dom96so let's not pressure ourselves to remove it now
20:18:00dom96but please write an issue so we remember and allow others to voice their opinions
20:18:20Araqwell there are other stupid bugs
20:18:54Araqlike not being able to iterate over single characters by a zero length match separator or something
20:19:11Araqsome shit that people use in JS
20:19:34dom96we can allow the developer of that new 're' module a say as well in that issue
20:21:18*Vladar quit (Quit: Leaving)
20:26:33FromGitter<mratsim> Am I alone thinking it’s super weird to call JS with importcpp: https://forum.nim-lang.org/t/3589
20:29:23Araqit's "import from Cost language py Pattern"
20:29:26Araq:P
20:35:53FromGitter<mratsim> I’m amazed this guy landed on Nim forum: https://forum.nim-lang.org/t/3588 someone must be doing awesome marketing
20:42:26*Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:02:23*rokups quit (Quit: Connection closed for inactivity)
21:03:00*nsf quit (Quit: WeeChat 2.0.1)
21:19:17*MJCaley quit (Quit: MJCaley)
21:24:37*Jesin quit (Quit: Leaving)
21:27:33*Trustable joined #nim
21:29:40*Jesin joined #nim
21:38:28*miran quit (Quit: Konversation terminated!)
21:44:05S1tiSchubtw is there any reason for "DEBUG" being twice in the LevelNames array in the logging module (line 69) ?
21:44:05S1tiSchuhttps://github.com/nim-lang/Nim/blob/082868f1bbec496b52d7ce6d894eec466802c980/lib/pure/logging.nim#L69
21:47:13Araqthere is no difference between all and debug levels iirc
21:47:43PMunchYeah looks like it
22:02:27*Ven`` joined #nim
22:02:41*Jesin quit (Quit: Leaving)
22:08:55*athenot_ quit (Ping timeout: 252 seconds)
22:09:19*Jesin joined #nim
22:09:46shodan45dom96: question about the chat server part of your book.... this is all async, but is it multithreaded?
22:10:11shodan45I'm coming from a mostly python background, so my multithreading is pretty rough ;)
22:11:24*athenot joined #nim
22:11:34shodan45I get a "feeling" that there would be race conditions in this code - like with the server's seq of clients
22:12:27*natrys quit (Quit: natrys)
22:16:08*athenot quit (Read error: Connection reset by peer)
22:17:02*Ven`` quit (Read error: Connection reset by peer)
22:17:15*athenot joined #nim
22:17:17dom96shodan45: there is no multithreading, except in the client where 'spawn' is used to read from stdin
22:17:32*sz0 joined #nim
22:17:35*Ven`` joined #nim
22:17:51shodan45ah ok, I'll keep reading then
22:18:15PMunchThere is a separate chapter on threads IIRC
22:20:52dom96The chapter is called Parallelism
22:21:23*PMunch quit (Quit: leaving)
22:28:28*Trustable quit (Remote host closed the connection)
22:38:12S1tiSchuAraq, so the first debug serves as "ALL" level ?
22:38:27Araqyes
22:38:31S1tiSchuah alright
22:38:34S1tiSchuthanks
22:38:42*S1tiSchu is now known as SitiSchu
22:42:09*xet7 joined #nim
22:43:06shashlickdom96: what do you mean by "doesn't persist"? https://github.com/nim-lang/Nim/issues/7256 - what's the expected behavior?
22:43:34Araqenv vars are not inherited
22:43:48Araqbut I'm pretty sure they are so ... I don't understand it either
22:44:26*xet7 quit (Client Quit)
22:44:50dom96I mean it doesn't pass them to the executable
22:45:03dom96env vars should be inherited IMO
22:46:29*xet7 joined #nim
22:49:31*jaco60 quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:49:40Araq"env is the environment that will be passed to the process. If env == nil the environment is inherited of the parent process."
22:49:56dom96yeah, so there must be a bug in osproc, no?
22:51:15*Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:52:50shashlickbut could you provide some example or test? hard to tell what the issue is and how it should behave
22:59:46GitDisc<Lua> is it bad to learn Lua?
23:00:47Araqdom96: works for me, see my reply
23:01:03FromGitter<zetashift> You in the wrong channel buddy to ask that haha. But it never hurts to learn a new language. Scripting languages like lua can be picked up very fast but they have certain purposes and don't really work outside of those
23:01:36AraqLua: yes, Lua is a little error prone like nothing else. 'nil' is freaking everywhere
23:01:51dom96I used `DYLD_LIBRARY_PATH=/usr/local/opt/openssl/lib`
23:01:59dom96set it in my shell
23:02:14dom96and it had no effect on the executable unless I executed it directly
23:02:57Araqwell PATH obviously is inherited, otherwise 'koch' couldn't run 'nim'
23:03:27AraqDYLD_LIBRARY_PATH is maybe special cased because $SECURITY
23:05:28dom96perhaps
23:07:11shashlickI just tried it and it works - set A=1 and then import ospaths; echo getEnv("A")
23:07:40shashlickbut I'm on Windows, not OSX like you
23:11:25shodan45I liked lua better back when it was simpler.... there used to be a single page PDF of everything there was to know (since it effectively doesn't (didn't?) have a stdlib)
23:13:07AraqLua still is simple, it's too simple.
23:13:34Araqit makes no sense to not distinguish between hash tables and lists in the name of simplicity.
23:14:23shodan45Araq: I dislike the 1-based indices more
23:15:26*LyndsySimon quit (Ping timeout: 276 seconds)
23:15:26AraqI don't care about that.
23:15:51*LyndsySimon joined #nim
23:16:23*yglukhov quit (Remote host closed the connection)
23:17:02Araqstarting with 1 makes more sense and only inflexible people can't adapt to the natural counting scheme
23:17:25shodan45luajit or whatever it's called is black magic.... pretty sure lua wouldn't have near its adoption level without it
23:17:56*dashed quit (Ping timeout: 276 seconds)
23:18:23Araqtbh I would make that a criterion for hiring programmers.
23:18:57Araq"Imagine your favourite programming language. Now only a single bit is changed. Indexing starts from 1. Got a problem with that?"
23:19:10Araq - "Yes, omg"
23:19:21Araq"ok, here is the door. next candidate please"
23:20:25shodan45what about "we removed generics. Got a problem with that?" ;)
23:21:00Araq"No problem, I have AST macros to compensate for the loss" :P
23:21:16shodan45hehe
23:21:17*dashed joined #nim
23:21:36*dashed quit (Max SendQ exceeded)
23:21:50*zielmicha_ quit (Ping timeout: 276 seconds)
23:22:47*r4vi quit (Ping timeout: 256 seconds)
23:24:31*zielmicha_ joined #nim
23:25:18*dashed joined #nim
23:25:18*r4vi joined #nim
23:25:26*dashed quit (Max SendQ exceeded)
23:25:36*r4vi quit (Max SendQ exceeded)
23:25:47*dashed joined #nim
23:25:51*dashed quit (Max SendQ exceeded)
23:26:20*r4vi joined #nim
23:26:24*dashed joined #nim
23:26:32*dashed quit (Max SendQ exceeded)
23:26:53*dashed joined #nim
23:27:04*dashed quit (Max SendQ exceeded)
23:27:21*dashed joined #nim
23:27:28*dashed quit (Max SendQ exceeded)
23:27:58*dashed joined #nim
23:28:17*dashed quit (Max SendQ exceeded)
23:28:35*dashed joined #nim
23:43:06FromGitter<zetashift> What's the best ncurses-like package for nim? pdcurses?
23:51:18FromGitter<zetashift> @dom86 how do I get a x64 version for choosenim?
23:52:48FromGitter<zetashift> meh I'll just settle for 32bit who cares