<< 23-10-2016 >>

00:12:21*arnetheduck joined #nim
01:04:52*HakanD_ quit (Quit: Be back later ...)
01:07:35*HakanD_ joined #nim
01:08:05*HakanD_ quit (Client Quit)
01:08:38*HakanD_ joined #nim
01:11:59*yglukhov joined #nim
01:13:07*HakanD_ quit (Ping timeout: 265 seconds)
01:15:53*sp33der89 quit (Ping timeout: 245 seconds)
01:16:36*yglukhov quit (Ping timeout: 256 seconds)
01:21:23*Jesin quit (Quit: Leaving)
01:22:23*chemist69 quit (Ping timeout: 256 seconds)
01:25:55*Jesin joined #nim
01:36:39*chemist69 joined #nim
01:51:36*pregressive quit (Remote host closed the connection)
02:16:06*avp joined #nim
02:16:11*avp left #nim ("WeeChat 1.5")
03:13:41*yglukhov joined #nim
03:17:59*yglukhov quit (Ping timeout: 256 seconds)
03:36:42*kulelu88 quit (Quit: Leaving)
03:41:22*rtr_ joined #nim
03:52:31*mitai quit (Ping timeout: 276 seconds)
04:21:08*arnetheduck_ joined #nim
04:21:08*arnetheduck quit (Read error: Connection reset by peer)
04:42:33*rtr_ quit (Remote host closed the connection)
04:43:07*rtr_ joined #nim
04:43:08*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
04:47:45*rtr_ quit (Ping timeout: 260 seconds)
04:58:30*cheatfate quit (Read error: Connection reset by peer)
04:59:10*cheatfate joined #nim
05:05:13*yglukhov joined #nim
05:08:20*bjz joined #nim
05:09:34*yglukhov quit (Ping timeout: 250 seconds)
05:10:15*bjz quit (Client Quit)
05:26:43*chemist69 quit (Ping timeout: 245 seconds)
05:31:22*chemist69 joined #nim
05:37:10*yglukhov joined #nim
05:37:51*bjz joined #nim
05:39:49*bjz quit (Client Quit)
05:40:06*rtr_ joined #nim
05:41:53*yglukhov quit (Ping timeout: 260 seconds)
05:46:39*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
05:56:36*bjz joined #nim
06:01:23*yglukhov joined #nim
06:05:44*yglukhov quit (Ping timeout: 250 seconds)
06:13:06*GustavoLapasta joined #nim
06:13:09*bjz quit (Ping timeout: 260 seconds)
06:13:41*bjz joined #nim
06:25:37*yglukhov joined #nim
06:30:08*yglukhov quit (Ping timeout: 260 seconds)
06:51:52*rtr_ quit (Remote host closed the connection)
06:52:35*rtr_ joined #nim
06:53:34*Demon_Fox quit (Ping timeout: 250 seconds)
06:55:21*Demon_Fox joined #nim
07:16:37*nsf joined #nim
07:57:42*enthus1ast quit (Ping timeout: 250 seconds)
08:02:00*yglukhov joined #nim
08:11:31*gokr joined #nim
08:16:54*enthus1ast joined #nim
08:19:21*irrequietus joined #nim
08:24:45*irrequietus quit (Remote host closed the connection)
08:25:56*irrequietus joined #nim
08:32:28*enthus1ast quit (Ping timeout: 265 seconds)
08:52:41*gokr quit (Ping timeout: 252 seconds)
08:59:03*yglukhov quit (Remote host closed the connection)
09:05:52*nsf quit (Quit: WeeChat 1.5)
09:07:30*gokr joined #nim
09:10:39*yglukhov joined #nim
09:23:41*yglukhov quit (Remote host closed the connection)
09:34:07gokrIt is just me who fail "nimble install python"?
09:34:30gokrIt seems there are no tags for that git repo either so I can't ... use an older one I think.
09:35:38Araqfails for me too
09:36:29Araqyeah, the nimble file is broken
09:36:47Araqlet me fix it, damn
09:38:44Araqtada
09:38:55*vendethiel- joined #nim
09:39:58*vendethiel quit (Ping timeout: 250 seconds)
09:40:33gokrAha, worked for me though when I ... did "nimble install nimble@#head"
09:41:42gokrAraq: So ... not sure what is going on there.
09:42:14AraqI think 'nimble install @#head' avoids parsing the .nimble file :-)
09:42:24*enthus1ast joined #nim
09:42:26Araqbecause the .nimble file clearly was broken
09:42:30AraqI just fixed it.
09:42:46gokrDo note that I mean... that "nimble install python" works after I did "nimble install nimble@#head" (<- note "nimble")
09:43:15gokrBut ok, perhaps it was you.
09:43:18gokrduh.
09:43:21Araqyes
09:43:35dom96I think 'nimble install @#head' avoids parsing the .nimble file :-)
09:43:37dom96Nope
09:43:48dom96'install' always parses the .nimble file
09:43:50Araqok, so it was just me.
09:44:39gokrAh (just looked at your commit)
09:46:02gokrAraq: I dropped that book thing, def talked me out of it ;)
09:47:21Araqwhat? why?
09:47:23gokrBut if anyone else here is interested in writing a book on Nim - for a pulishing house - check with me.
09:47:35gokrI don't have the time simply.
09:48:13gokrBut if you together with some others want to do it - I can forward you.
09:48:19Araqhow about def-, gokr and araq write the book together? everybody submits a chapter
09:49:08Araqwe only need to reword some blog posts of ours *cough*
09:49:13gokrMmm.
09:49:54dom96you'd likely need to submit more than one chapter each :)
09:50:10gokrI might try to chip in something of course - but if you want to do this (and not self publish simply) - then you should grab it and talk to those guys.
09:50:34gokrdef was mainly thinking of writing a small one, and self pub it.
09:56:04*rtr_ quit (Remote host closed the connection)
09:56:24*gokr quit (Ping timeout: 260 seconds)
10:01:40*Demon_Fox quit (Quit: Leaving)
10:18:46*desophos quit (Read error: Connection reset by peer)
10:19:02*rtr_ joined #nim
10:31:51*elrood joined #nim
10:50:00*bjz quit (Ping timeout: 250 seconds)
10:50:55*bjz joined #nim
10:55:19*xet7 quit (Quit: Leaving)
11:02:04*Snircle joined #nim
11:02:32*irrequietus quit (Ping timeout: 256 seconds)
11:07:15*sp33der89 joined #nim
11:08:58*GustavoLapasta quit (Quit: Leaving)
11:13:42cheatfateso, 0.15.2 released?
11:19:57arnetheduck_btw, looks like the clang optimizer breaks nim gc (m&s at least) when compiling with lto.. nim c --gc:markandsweep -c gcemscriptem.nim, then clang -flto -O2 the c files causes the test to fail.. anyone seen this before?
11:25:58*gangstacat quit (Ping timeout: 250 seconds)
11:26:09*gangstacat joined #nim
11:29:51FromGitter<endragor> @Araq Is it safe to use a global variable from multiple threads if the variable gets initialized at the beginning of the program and is never changed later?
11:30:22Araqno.
11:31:00FromGitter<endragor> what can happen?
11:33:01Araqsubtle data races due to the unprotected write barrier
11:33:20Araqand no, "reading" doesn't mean the write barrier is not run.
11:35:36*Ven joined #nim
11:38:35*irrequietus joined #nim
11:45:49*Ven quit (Read error: Connection reset by peer)
11:46:03*Ven joined #nim
11:47:24*irrequietus quit (Ping timeout: 260 seconds)
11:55:56FromGitter<endragor> where can I read about that? I was pretty sure in C/C++ and if you don’t change certain piece of memory after thread is created, you’re fine reading it. And write barriers in code that only reads sounds odd. barriers should not be “run” automatically at all - they are invoked explicitly, aren’t they?
11:57:23FromGitter<endragor> well they are run “automatically" for volatile and other special stuff, but outside of that it’s an explicit thing that tells compiler/cpu to avoid certain reorderings
11:57:42Araqthat's a CPU memory barrier
11:57:51Araqvery different from a GC barrier.
11:58:19FromGitter<endragor> ok, so that’s specifics of GC, I see
11:58:26Araqbut assuming naive C++ refcounting can give you an idea:
11:58:56Araqauto tmp = some_shared_pointer();
11:59:10Araqprintf(tmp->bar); // only used tmp for reading
11:59:39Araq // RC ops still performed though
12:03:16*Ven_ joined #nim
12:03:51FromGitter<endragor> I don’t think C++ shared ptrs change internal state when you dereference them :-P only construction/assignment/destruction affect refcounting.
12:04:18*Ven quit (Ping timeout: 256 seconds)
12:04:29Araqauto tmp = some_shared_pointer(); was meant to be an assignment
12:04:50*HakanD_ joined #nim
12:05:10*kunev quit (Quit: е те!)
12:05:11FromGitter<endragor> ah alright. but no problem if no assignment ever happens after threads are created, right?
12:07:01Araqstrictly speaking the compiler is allowed to introduce assignments :P
12:07:18Araqyou'll likely get lucky though with the current compiler
12:10:47*fredrik92 joined #nim
12:11:37*fredrik92 quit (Client Quit)
12:12:26*fredrik92 joined #nim
12:13:28FromGitter<endragor> ok, I don’t want to temporarily get lucky :) but not sure how to solve my problem some other way. a pragma like {.copyMeWhenThreadIsCreated.} would be nice. ⏎ Basically I have a library module that has an immutable variable (a table) that gets initialized as a result of macro invocations. Then it’s only read, without any writing. The library doesn’t control thread creation, so there is no obvious way to pass that table to other
12:13:28FromGitter... threads, so that everything is GC-safe.
12:15:30*Ven_ quit (Read error: Connection reset by peer)
12:15:43Araqah that's a tough nut. A shared table would work but cannot be constructed at compile time
12:15:49*Ven joined #nim
12:16:07Araqbut you can copy into the shared table at runtime.
12:16:54Araqor you dump the data as json at compile-time and read it back at runtime
12:23:40*kunev joined #nim
12:24:04FromGitter<endragor> I’m fine with runtime, the initialization is at runtime at the moment. I actually forgot about existence of SharedTable. The problem is that the table data itself is GCed, too :/ The easiest and generic solution would be to copy the table (or any other object) automatically when a thread is created with the help of some compiler pragma. Otherwise I guess I have to implement my own non-GC data structure.
12:29:24*bjz quit (Ping timeout: 260 seconds)
12:29:59Araqcopy to what?
12:30:54FromGitter<endragor> basically make it .threadvar that gets copied from the thread that creates the new thread.
12:31:59*dom96 quit (Changing host)
12:32:00*dom96 joined #nim
12:32:02*bjz joined #nim
12:36:55*xet7 joined #nim
12:42:29*rtr__ joined #nim
12:43:39Araqcheatfate: now. v0.15.2 is out.
12:45:47*rtr_ quit (Ping timeout: 256 seconds)
12:47:08*Ven quit (Ping timeout: 244 seconds)
12:47:27*Ven joined #nim
12:49:52*rtr_ joined #nim
12:51:56*rtr__ quit (Ping timeout: 250 seconds)
12:52:42*rtr__ joined #nim
12:54:23*mitai joined #nim
12:54:58*rtr_ quit (Ping timeout: 250 seconds)
13:01:29*Ven quit (Read error: Connection reset by peer)
13:01:43*Ven joined #nim
13:10:35*rtr__ quit (Quit: Leaving...)
13:17:15*Ven_ joined #nim
13:17:45*Ven quit (Read error: Connection reset by peer)
13:24:02*pie_ joined #nim
13:25:02cheatfateAraq, but `Nim build is failed` with release...
13:30:58Araqwhat?
13:32:05Araqah hmm, that's the niminst change
13:32:11Araqstrange I got no email for this
13:36:21Araqargh -.-
13:48:35*Ven_ quit (Ping timeout: 252 seconds)
13:50:29*Ven joined #nim
13:52:47*HakanD_ quit (Quit: Be back later ...)
13:53:21*HakanD_ joined #nim
13:54:16*stisa joined #nim
13:55:15*vxn joined #nim
13:55:16*mitai quit (Ping timeout: 260 seconds)
13:56:42*HakanD__ joined #nim
13:57:38*HakanD_ quit (Ping timeout: 250 seconds)
14:01:31*elrood quit (Quit: Leaving)
14:08:53*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
14:11:43*HakanD__ quit (Quit: Be back later ...)
14:17:33*enthus1ast quit (Ping timeout: 245 seconds)
14:24:07FromGitter<nigredo-tori> Is there a good way to get a unique `NimIdent` in a macro? I've got something along these lines: ⏎ ```Error: type expected``` ⏎ I guess the root of the problem is `genSym` in an untyped tree? Am I wrong? [https://gitter.im/nim-lang/Nim?at=580cc807b6fc192f5631924e]
14:24:51*Trustable joined #nim
14:29:56*HakanD__ joined #nim
14:32:57*stisa quit (Quit: Leaving)
14:33:17*enthus1ast joined #nim
14:47:06*Ven quit (Read error: Connection reset by peer)
14:47:12*Ven_ joined #nim
15:05:34*nsf joined #nim
15:07:18arnetheduck_* exports a symbol from a module, is there a pragma to do the same? such that it can be conditionally controlled?
15:14:22FromGitter<nigredo-tori> @arnetheduck_, in what context? Do you want to export a symbol defined elsewhere? In this case I don't think there is such thing.
15:16:05arnetheduck_I want something to the effect of: when defined(exportmyfuncs): proc x*() else: x()
15:19:36Araqarnetheduck_: ah no. interesting idea thouhg
15:20:09FromGitter<nigredo-tori> The simplest I can think of is with forward declarations: ⏎ ```when exportMyProcs: ⏎ proc foo* ⏎ proc foo = discard``` [https://gitter.im/nim-lang/Nim?at=580cd529fb138dce65ef71d1]
15:21:31arnetheduck_if there was such a pragma, I think it should be possible to do something like when defined(xxx) {.pragma: exportmaybe, export.} else: {.pragma: exportmaybe .}
15:22:38arnetheduck_nigredo-tori, not a fan of forward declarations - it's 2016 after all ;)
15:24:51FromGitter<nigredo-tori> @arnetheduck_, you can use macros as pragmas. And you can definitely add/remove export postfix from a declaration in a macro. So it shouldn't be hard to define exportmaybe the way you want it to behave.
15:25:04*elrood joined #nim
15:26:41*desophos joined #nim
15:26:58*desophos quit (Read error: Connection reset by peer)
15:27:26*desophos joined #nim
15:28:05Araqthat's true. a macro can do it.
15:28:17FromGitter<nigredo-tori> Also, speaking of macros: @Araq, while you're here, could you please answer my question from hour ago?
15:30:07Araqdunno, looks like it should work?
15:30:11Araqpatch the compiler
15:30:53FromGitter<nigredo-tori> =) Ok, I'll start an issue.
15:31:56arnetheduck_Araq, btw, rtti seems to be used mainly for the gc and deepcopy - so why does it include field names?
15:32:21Araqso that marshal knows about the field names?
15:32:55arnetheduck_aah, used by marshal..
15:33:28arnetheduck_sucks to grep for "name" ;)
15:37:52*HakanD___ joined #nim
15:41:11*StarBrilliant joined #nim
15:41:15*HakanD__ quit (Ping timeout: 244 seconds)
15:41:15*HakanD___ is now known as HakanD
15:42:00*Matthias247 joined #nim
15:49:33*stefantalpalaru joined #nim
15:50:31stefantalpalaruI'm getting a "./koch install" error with 0.15.2
15:50:34stefantalpalaruError: unhandled exception: format string: key not found: NIMINSTDEPS [ValueError]
15:50:34stefantalpalaruError: execution of an external program failed: './tools/niminst/niminst --var:version=0.15.2 --var:mingw=none --main:compiler/nim.nim scripts compiler/installer.ini'
15:52:00Araqyeah that's pretty bad -.-
15:52:28Araqworkaround: create a NIMINSTDEPS environment variable with some dummy value
15:53:25Araqgood thing we made niminst more picky ...
15:54:05Araqyou shouldn't use 'koch install' btw
15:54:32stefantalpalaruwhat's the preferred installation method?
15:55:33Araquse your package manager to mess with /usr/bin or just add it to your path like we clearly document in ten billion places
15:56:41stefantalpalaruI don't want a separate tree. I'm packaging it for Gentoo (non-official overlay) and "koch install" did what I wanted until now
15:58:05Araqfor packagers we now have 'koch distrohelper'
15:58:28Araqwhich generates the install.sh for you
15:58:52Araqkoch install means "generate and run install.sh"
15:59:39stefantalpalaruOK. The env var workaround works. I'll give 'koch distrohelper' a try.
16:00:39Araqthanks.
16:01:26*Ven_ quit (Read error: Connection reset by peer)
16:01:59*Ven joined #nim
16:25:22arnetheduck_Araq, if I have a type A = object, B = A, is there any way to find out in the AST that B is an alias for A? from what I can tell, the TType instance for B is a copy of A, with no trivial way to follow back to A
16:26:47Araqboth typ.sym fields point to the same sym?
16:28:02*nsf quit (Quit: WeeChat 1.5)
16:32:51*nsf joined #nim
16:33:37arnetheduck_no, they point to copies..
16:34:12arnetheduck_and the copies have different name fields, as expected..
16:35:09arnetheduck_the two types get different id:s as well
16:35:46*Andris_zbx joined #nim
16:36:38Araqarnetheduck_: sounds bad. how does the compiler type check these things then?
16:36:50arnetheduck_in the c generator, a single type is generated because the c gen compares the layout of the two types
16:38:34AraqI asked about the type checking, not codegen
16:39:19arnetheduck_no idea, that's what I was hoping you would remember ;) not familiar with those parts
16:39:30*HakanD quit (Quit: Be back later ...)
16:48:11arnetheduck_ok, I think I found it.. in types.nim, it looks like it compares the sym id's of the children of every field in the type
16:49:09arnetheduck_proc sameObjectTree
16:58:22dom96https://www.reddit.com/r/programming/comments/58yf7s/nim_0152_released/
17:00:04*yglukhov joined #nim
17:04:39*HakanD joined #nim
17:06:08*baabelfish quit (Quit: WeeChat 1.0)
17:07:13*yglukhov quit (Remote host closed the connection)
17:08:09*libman joined #nim
17:11:10*yglukhov joined #nim
17:14:23*Andris_zbx quit (Ping timeout: 256 seconds)
17:15:47federico3dom96: heh, "productivity/performance ratio" is indeed quite odd
17:18:39dom96Really? I still don't see how
17:20:16flyxsomeone reported an error on acquiring NimYAML containing „Cannot find nimscriptapi.nim. [NimbleError]“
17:20:29flyxhasn't that been fixed some time ago
17:20:33federico3dom96: to some picky commenters the ratio would be very high on very productive and very *slow* language like Python or Ruby
17:21:23dom96so what should we change it to?
17:22:25federico3well, personally I'd say "excellent productivity and performance"
17:24:14dom96Araq: can I change it?
17:30:19Araqsure
17:31:27Araqdom96: we also need to decide if the niminst issue means we should release 0.15.4 ... -.-
17:31:52*Ven quit (Read error: Connection reset by peer)
17:32:06elrooddom96, while you are at it, a bit more modesty and less tooting one's own horn wouldn't hurt either. some might view *excellent* as a bit inadequate and pretentious
17:32:11*Ven joined #nim
17:32:46federico3s/excellent/good/ ? :)
17:33:33dom96done
17:33:39dom96I just removed that phrase
17:33:46dom96sounds good now?
17:33:54federico3"Nim provides."
17:38:46federico3dom96: are you usually enabling security flags for Nimble e.g. https://github.com/nim-lang/Nim/wiki/Security
17:38:50federico3..?
17:39:52dom96nope, why?
17:41:04federico3Nimble is doing Internet traffic and pulling sources...
17:48:08*Andris_zbx joined #nim
17:48:55*yglukhov quit (Remote host closed the connection)
17:49:23*Ven quit (Ping timeout: 244 seconds)
17:51:21*Ven joined #nim
17:51:56*HakanD quit (Quit: Be back later ...)
17:52:30*HakanD joined #nim
17:53:44*enthus1ast quit (Read error: Connection reset by peer)
17:54:24*enthus1ast joined #nim
17:58:55*yglukhov joined #nim
18:00:12dom96federico3: feel free to compile Nimble with those flags
18:04:53*Sentreen quit (Ping timeout: 252 seconds)
18:12:51elroodbtw, what was the rationale behind using open instead of half-open ranges, with inclusive lower and exclusive upper bound?
18:18:03*Sentreen joined #nim
18:19:24cheatfateelrood, i think this question is like question about `why spaces and not tabs`...
18:21:07AraqI don't see these flags having any meaningful effects on Nim
18:21:33Araqelrood: half-open ranges do not even work.
18:21:58Araqlow(myEnum)..high(myEnum)
18:22:40Araqexclusive upper bounds only work when you actually have a value that shouldn't be part of the interval.
18:22:56elroodcheatfate, actually, it's not really bikeshedding, there are logical reasons behind using half-open intervals as a convention. you might just want to read dijkstra's ewd831 for a concise argument. and even if it was just a question of opinions, there must have been reasons to decide on the way it is
18:23:10Araqdijkstra is wrong.
18:23:16Araqcan happen to the best of us.
18:23:30elroodhe usually is, yep ;) or at least it's fun to disagree with him
18:24:19elroodwhile i don't agree with your reasoning here, thanks for your explanation and insight into your way of thought
18:24:39Araqas I said, it's not enough to disagree
18:24:51Araqyou also have to be unable to explain your reasoning.
18:25:18Araqyou cannot disagree about objective facts.
18:25:42Araqfact: exclusive intervals do not work. In fact, they are not even constructive.
18:25:44elroodi haven't even tried, so unable is a bit harsh, but okay. how would you denote an empty range, for example? but sure, it's not something that can be changed at this stage anymore, even if you wanted
18:26:12Araqempty range: 0 .. -1
18:27:04*yglukhov quit (Remote host closed the connection)
18:27:18elrooddoesn't go quite that well with nim's credo of being elegant if you have to dive into the realm of unnatural numbers for that, but it's fine, not really an issue
18:27:43Araqon the contrary, negative numbers are inherently elegant
18:27:55cheatfateempty range in such way looks ugly
18:27:59Araq0 .. len - 3 iterates 0 times when len == 0
18:28:17Araqwith unsigned you get overflows instead, how useful.
18:29:02Araqalternatively you can abandon subtractions
18:29:12cheatfateit looks ugly just because 1st > 2nd
18:29:36cheatfateand of course doesnt work for unsigned integers...
18:30:09Araqunsigned integers are inherently broken anyway.
18:30:27cheatfateunsigned integers broken only in Nim
18:30:59Araqfor (unsigned int i = 0; i < length-3; i++) // broken in C, C++
18:31:09Araqbroken everywhere.
18:31:33Araqbut nice try.
18:31:44cheatfatenot broken because you will get warning about ^^^
18:31:59Araqand how do you fix the warning?
18:32:18Araqcountup(a, b) # let's reverse this loop
18:32:37Araqcountdown(b, a) # easy peasy, because both are inclusive.
18:33:36elroodyour way additionally blocks the path to a more intuitive notation of end-relative indexes as we have in python, by the way. but as said, it's not something really worth discussing about at this stage of nim's development. i was just asking for curiosities sake, not for a change
18:33:45cheatfatewe can always dispute in such way, but nim uses c as backend and c has unsigned types...
18:34:23Araqelrood: ..< exists in Nim and is perfectly natural
18:34:27cheatfateeven cpu has unsigned and signed operations
18:34:32elroodugly ;P
18:34:40*irrequietus joined #nim
18:34:42elroodjust as ^1
18:34:53Araq.. vs ..< is more betautiful than Python's :
18:35:06Araqjust as ^1 is more beautiful than -1
18:35:22elroodnah, now that's *real* bikeshedding we're delving into. but we can agree to disagree here
18:36:02*GustavoLapasta joined #nim
18:36:12cheatfate-1 is normal notation which everybody can understand, but for me ^1 looks like `xor 1`... and what does it mean? need to read documentation... and so on
18:37:00Araqa[-1] is not obvious to non-Python-programmers
18:37:14AraqJava/C# have no such concept
18:37:51*irrequietus quit (Client Quit)
18:38:00cheatfateAraq, i have enough python experience and know about [-1] # and i dont think its a great idea... but anyway when you are learning python some of things happens which you not like...
18:38:03*irrequietus joined #nim
18:38:48cheatfate`double space` was also a problem for me when i have started with nim... but i have already adapted
18:38:59Araqcongrats. :P
18:39:37*enthus1ast quit (Read error: Connection reset by peer)
18:39:58*enthus1ast joined #nim
18:40:20cheatfateso its why elrood question ~ `space vs tabs` question... it depends on chaos in Araq's head :)
18:41:42Araqexcept my reasons are always reasonable whereas yours amount to "I disagree because it's different"
18:42:17*irrequietus quit (Read error: Connection reset by peer)
18:42:22Araqspaces vs tabs is another topic. Hint: tabs do not work ;-)
18:42:29*irrequietus joined #nim
18:43:17cheatfateAraq, your reasons are subjective
18:44:52cheatfateand some people can agree with you and continue to use your language, but there always present amount of people which disagree... but its your language and your rules
18:46:23elroodhint: tabs do work, if used correctly for indentation only and not for alignment within code. but aye, it's a different topic, and one that's been discussed to death and back superoversufficiently
18:47:36AraqC has a concept of an addressable but not dereferencable memory location. a[L] has an address but you cannot deref the pointer. All thanks to exclusive ranges.
18:47:40cheatfateno, this is same topic... some people likes '{}' some people likes spaces and some people like spaces with tabs
18:48:35cheatfatesome people likes signed integers only, some people likes signed + unsigned integers
18:48:43AraqThat's a subtle corner case. Hardly elegant.
18:49:20cheatfatesome people likes exclusive ranges and some people likes inclusive ranges...
18:49:36cheatfateSo we need to stop dispute on `colors`...
18:49:42Araqand some people actually understand the implications.
18:50:12federico3cheatfate: I like invisible green
18:54:23cheatfatedoes anybody know how to implement pseudoterminal (pty) on windows?
18:54:36cheatfatei dont mean escape sequences
18:55:07cheatfatei mean what i can use to make behavior equal to unix pty
18:55:52*irrequietus quit (Read error: Connection reset by peer)
18:56:00*irrequietus joined #nim
18:56:59elroodgithub.com/rprichard probably does
18:59:01*Jesin quit (Quit: Leaving)
19:02:07cheatfateelrood, yeah its my working idea but it has a problems... because i need to pass name of my brand new pty console to other program
19:02:15*Ven quit (Read error: Connection reset by peer)
19:02:37*Ven joined #nim
19:03:20cheatfatebut looks like its only way
19:07:34*gokr joined #nim
19:07:34*Jesin joined #nim
19:15:11*Andris_zbx quit (Quit: Leaving)
19:19:40*yglukhov joined #nim
19:27:48*PMunch joined #nim
19:35:04*Ven quit (Ping timeout: 260 seconds)
19:36:48*Ven joined #nim
19:49:38*Ven quit (Ping timeout: 245 seconds)
19:52:25*Ven joined #nim
19:54:29*bjz joined #nim
19:54:46*stefantalpalaru quit (Quit: Leaving)
19:58:32*yglukhov quit (Remote host closed the connection)
20:01:34*Jesin quit (Quit: Leaving)
20:03:49*chemist69 quit (Ping timeout: 260 seconds)
20:05:20libmanReminder: if you're on Facebook, please join https://www.facebook.com/groups/2344484792356933/ and share Nim-related posts (especially to programming groups).
20:10:40*stisa joined #nim
20:11:10flyxthere are programming groups on facebook?
20:19:41*Ven quit (Ping timeout: 260 seconds)
20:19:43*kulelu88 joined #nim
20:20:40Calinouhttp://libman.org/img/bak/20160806-Nim-StarGazers.jpg
20:20:43Calinouhey, I see my avatar
20:20:53Calinoutop left, just to the left of the 2nd "spike" of the crown starting from the left
20:20:57Calinouthe grey and green pixel one
20:22:11*Ven joined #nim
20:22:51Calinoulibman: btw I made a 64-bit AppImage of Godot
20:23:30libmanI'm not familiar with AppImage.
20:24:03Calinoulibman: http://appimage.org/
20:24:06Calinouportable Linux applications
20:24:08libmanWait, actually I am, but it's outside my field of interests.
20:24:29*yglukhov joined #nim
20:25:07libmanMy long-term goal (aside from studies in many fields outside CS) is a pure-Copyfree Unix distro. Nothing that's restrictively licensed or married to Linux is interesting to me.
20:26:01libmanflyx: Facebook sucks, but it has over a billion users. It's a good way of reaching people for my other projects, so I put my dev-related projects on FB as well.
20:26:44libmanA Nim wrapper over Godot C++ would be very interesting for pure-Copyfree apps though.
20:28:40*yglukhov quit (Ping timeout: 250 seconds)
20:30:44*chemist69 joined #nim
20:31:41*jh32 quit (Remote host closed the connection)
20:43:59*GustavoLapasta quit (Quit: Leaving)
20:49:29libmanhttps://archive.is/ON2L9 - To Boldly Share Where No Nim Was Shared Before! :P
20:52:55cheatfatedom96, what do you think about function in asyncdispatch to get handle of windows completion port? something like `getSystemHandle(p: PDispatcher): Handle =`?
20:53:06*libman quit (Quit: Leaving.)
20:59:17dom96cheatfate: sounds good
21:00:59sp33der89@def-, any new blogposts coming up?
21:01:03sp33der89on the hookrace blog
21:01:30def-sp33der89: yes, i think i wrote one 2 days ago :D
21:01:41sp33der89sweet!! looking forward to it
21:01:51def-i mean i put it online 2 days ago
21:01:57def-but it's about nim anyway
21:02:45def-it's not*
21:03:07sp33der89it's about haskell!
21:03:08sp33der89woop
21:08:40*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:11:02sp33der89@def-, still like the post, always can enjoy articles like these
21:11:07*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
21:12:02*Demon_Fox joined #nim
21:13:38*HakanD quit (Quit: Be back later ...)
21:14:13*HakanD joined #nim
21:15:40*dddddd joined #nim
21:15:45def-thanks sp33der89
21:23:15*Sentreen quit (Ping timeout: 252 seconds)
21:24:02*Jesin joined #nim
21:36:14*Sentreen joined #nim
21:37:28*bjz joined #nim
21:52:06*bjz quit (Read error: Connection reset by peer)
22:00:10*elrood quit (Quit: Leaving)
22:07:44*chemist69 quit (Ping timeout: 250 seconds)
22:08:55cheatfatedom96, https://github.com/nim-lang/Nim/pull/4941#issuecomment-255617857
22:10:12*chemist69 joined #nim
22:19:36*HakanD quit (Quit: Be back later ...)
22:20:45*stisa quit (Quit: Leaving)
22:21:26*HakanD joined #nim
22:25:56*HakanD quit (Ping timeout: 256 seconds)
22:26:21*yglukhov joined #nim
22:30:43*yglukhov quit (Ping timeout: 252 seconds)
22:33:00*Trustable quit (Remote host closed the connection)
22:36:08*gokr quit (Ping timeout: 244 seconds)
22:36:34*PMunch quit (Quit: leaving)
22:48:25*nsf quit (Quit: WeeChat 1.6)
23:04:34*Matthias247 quit (Read error: Connection reset by peer)
23:13:30*irrequietus quit ()
23:16:58*mitai joined #nim
23:59:36*mitai quit (Ping timeout: 260 seconds)