<< 16-06-2015 >>

00:00:20*jaco60 joined #nim
00:33:30*Miko_ quit (Ping timeout: 272 seconds)
00:47:02*Miko_ joined #nim
00:48:52*boop is now known as boopisaway
00:51:17*Miko_ quit (Ping timeout: 240 seconds)
01:00:20*brson quit (Remote host closed the connection)
01:05:34*skalpin joined #nim
01:06:40*skalpin left #nim ("undefined")
01:07:50*jaco60 quit (Ping timeout: 256 seconds)
01:09:07*johnsoft quit (Ping timeout: 256 seconds)
01:13:12*kumul quit (Quit: Leaving)
01:20:56*dddddd quit (Ping timeout: 246 seconds)
01:50:48*banister quit (Ping timeout: 252 seconds)
01:55:33*yglukhov____ joined #nim
02:00:07*yglukhov____ quit (Ping timeout: 244 seconds)
02:06:36*pipeep quit (Ping timeout: 272 seconds)
02:10:58*pipeep joined #nim
02:11:55*renesac quit (Ping timeout: 252 seconds)
02:19:37*BitPuffin|osx quit (Ping timeout: 240 seconds)
02:25:16*renesac joined #nim
02:43:51*enquora quit (Quit: enquora)
02:46:48*elbow_jason joined #nim
02:49:09*ChrisMAN quit (Ping timeout: 246 seconds)
03:00:31*banister joined #nim
03:10:56*woadwarrior joined #nim
03:23:58*darkf joined #nim
03:35:11*elbow_jason quit (Quit: Leaving)
03:36:40*dbotton left #nim ("Leaving")
03:47:24*Jessin joined #nim
03:47:41*Jesin quit (Disconnected by services)
03:47:45*Jessin is now known as Jesin
03:55:14*saml_ quit (Ping timeout: 245 seconds)
03:56:16*askatasuna quit (Quit: WeeChat 1.2)
04:13:42*woadwarr_ joined #nim
04:16:01*woadwarrior quit (Ping timeout: 264 seconds)
05:12:30*Senketsu joined #nim
05:18:38*filwit quit (Quit: Leaving)
05:37:12*Jesin quit (Quit: Leaving)
05:43:44*Kingsquee joined #nim
05:46:07*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
06:07:01*lyro quit (Ping timeout: 264 seconds)
06:21:41*lyro joined #nim
06:45:27*Miko_ joined #nim
06:53:32gokrGood morning!
06:54:14*yglukhov____ joined #nim
06:57:06*Matthias247 joined #nim
06:57:23TEttingerhey gokr
06:57:29TEttingerhow's the Ni work going?
06:57:40gokrGoing quite well!
06:57:45XeNi?
06:57:55gokrI hacked up a little REPL for it so I can make interactive tutorials
06:58:14gokrXe: Its a... Rebol/Smalltalk/Self-kinda language written in Ni.
06:58:22gokrgithub.com/gokr/ni
06:58:23XeNim*?
06:58:36*yglukhov____ quit (Ping timeout: 256 seconds)
06:58:48dtscodeni
06:58:50gokrNo, Ni. As in "less than Nim" or "We are the Knights who say..."
06:59:05gokrIncredibly stupid name, I know.
06:59:10dtscodeThere is no i in ni... oh wait
06:59:25gokrBut Nimbol sounded so... cheezy.
06:59:49TEttingerdormin
07:00:05TEttingerrebol is postfix, kinda, right?
07:00:10TEttingerso, nim backwards
07:00:24gokrRebol is prefix but with some operators being infix.
07:01:08gokrNi is the same as Rebol, but you can choose if your funcs are to be infix or prefix, and you can also have more than 2 args for infix funcs.
07:01:18gokrIt may be a dumb idea, but I am experimenting.
07:01:48gokrIn Rebol I think only some specific operators are infix. Like you know "+", "-" etc
07:01:55*Ven joined #nim
07:02:30gokrSo in Ni I can do "[a b c] put 0 foo"
07:03:13gokrSo the "put" func is infix mimicking a "receiver" on the left.
07:04:28*gour joined #nim
07:04:42gokrAnyone interested can hop over to #nilang I just created
07:04:55gokrDon't want to... pollute this channel too much
07:06:02gokrAnyway, the gist of it is that Ni is a pure interpreter, quite smallish (parser 300 loc, interpreter 700 loc) and its basically an experiment of making a new language mixing various parts of Rebol, Self, Smalltalk and Nim into a 100% live language.
07:06:20gokrIts meant to mix with Nim.
07:07:08gokrIn parallell fowl is making a bytecode VM for a live language too - but its more like Self/Smalltalk.
07:09:49*gour quit (Remote host closed the connection)
07:09:58gokrAlso, Ni being based on a Rebol core syntax/idea - is homoiconic and thus is a "kinda Lisp".
07:10:50*gour joined #nim
07:11:34*notostraca joined #nim
07:12:53*TEttinger quit (Ping timeout: 265 seconds)
07:13:27*gour quit (Client Quit)
07:14:32*notostraca is now known as TEttinger
07:20:29*afiskon joined #nim
07:23:13*Matthias247 quit (Read error: Connection reset by peer)
07:23:18*Trustable joined #nim
07:27:01*gour joined #nim
07:34:45*Demon_Fox quit (Ping timeout: 250 seconds)
07:40:15*gour quit (Quit: Using Circe, the loveliest of all IRC clients)
07:40:58*gour joined #nim
07:46:07*tennix joined #nim
07:47:42*jszymanski joined #nim
07:50:00ozragokr: A a repl, it's progressing :) Me I'm deep in Nim, trying to get the generic inheritance to work - my first real minimum implementation of code in nim choked, so now it's compiler hacking time again ;-)
07:50:22gokrHehe
07:51:01gokrA REPL is just ... well, I don't like them really, but I wanted one to drag people into it.
07:51:14gokrAnd to make interactive tutorials.
07:51:22ozraYes, it's important as a sort of 'school' :)
07:51:50gokrAs a Smalltalker I consider a REPL to be a poor mans live environment, but ok.
07:52:35*gour quit (Quit: Using Circe, the loveliest of all IRC clients)
07:53:21*gour joined #nim
07:55:43*bjz joined #nim
07:57:56fowlozra: I have to write some big impressive GUI to beat him now
07:58:27ozrafowl: Haha, 3D! No.. 4D!
07:59:08ozragokr: fowl: Are these POC or do you intend for them to be scripting langs for use in Nim apps, or any specific use case?
07:59:38ozraAnd, what about Nims internal VM? Anything that can be leveraged?
08:00:02gokrMine is an experiment for fun mostly - but... the idea is for it to turn into a 100% live language that can mix deeply with Nim.
08:00:46*Miko_ quit (Quit: Verlassend)
08:00:53gokrThus yes, scripting sure. For very large advanced systems (say, oh, a virtual reality 3D system for example) it may turn out to be a powerful tool.
08:01:27fowlI dunno the purpose of mine. Ask me after it has a name. Should have started with a name tbh
08:01:50gokrBut yeah, I think we both are scratching some itch and having fun mostly.
08:02:22ozrafowl: So "min", hehe
08:02:37gokrI hope to get Ni to such a state that I can show it to Smalltalkers as "hey, look at this, its not Smalltalk, but pretty close - and oh, it does native threads etc".
08:02:44ozrafowl: gokr: I hear you, it is grand fun toying with langs :)
08:04:22gokrAraq asked why we aren't using the Nim VM - and to be frank, I came at it from a high level angle and didn't really consider it. I will look, but suspect I won't understand it :)
08:04:30gokrWhere is it btw...
08:05:48*coffeepot joined #nim
08:05:58ozragokr: Not sure myself :) I'm taking my degress going from bufxing lexer, to hacking parser, and now I'm tackling semantics. VM is yet to be conquered ;)
08:06:47fowlA stack based simple VM was easier to write than learning everything I need to for NIMS vm
08:07:21ozraYeah, I see
08:08:53*yglukhov____ joined #nim
08:09:01fowlGn
08:16:58ozragokr: saw a compiler/vm.nim, hint
08:28:59*afiskon quit (Quit: Leaving)
08:35:36ozraAraq, if you're around, I could need a hint: I get 'sameObjectTypes() a = "B_obj" (object) [id=88026, sum.id=88009], b = "B_obj" (object) [id=88172, sym.id=88009]` - as you can see the id's of the compared types differ. Should this be at all possible? Otherwise, can you point me to where object hierarchies are 'created' and the id is generated / set?
08:36:19ozra"sum.id" should ofc be "sym.id"
08:39:02*gour quit (Remote host closed the connection)
08:41:04Araqozra: er ... sameObjectTypes has special logic for when the objects was generated from a generic
08:41:09Araq*were
08:41:38Araqso ... iirc the IDs can be different but sameObjectTypes shouldn't care in this case about the IDs
08:42:17*Triplefox left #nim ("http://quassel-irc.org - Chat comfortably. Anywhere.")
08:43:14ozraYeah, one of the B_obj, stems from C[T] which has been reduced step by step, but then it continues on to A_obj, and finally fails. This is the failing point. I tried variations of forcing the structural comparison in sameObjectTypes (bypassing checks for the special logic that otherwise was skipped), but it still fails..
08:44:15ozraBut, bottom line: It is expected that the same type can have different id's when working with generics then? So I should solve it here around at least?
08:45:54ozraOtherwise, I'll dig deeper, if I just get some starting pointers of how the whole type-creation chain looks, broadly...
08:46:31Araqthe type-creation is the most messy part in the compiler ... essentially we never got the type graphs right
08:46:55*woadwarrior joined #nim
08:47:01*HaCk3D joined #nim
08:47:21Araqand I still don't know how it should be done instead ...
08:48:29ozraAraq: Alright - I think I might as well try to get to the bottom of understanding it then, and hopefully be able to straighten _something_ out... I need those constructs for my use case, and my alternative is coding much of what Nim is anyway, which is not much point, so I might as well invest deeper into Nim ;-)
08:48:42Araqbut to answer your question: yeah that's where you should start your attack
08:49:21Araqthere is then later a type unification done in the C backend so these different-yet-the-same objects produce the same C structs for interop
08:50:02*woadwarr_ quit (Ping timeout: 272 seconds)
08:51:03ozraAha. Could it be better getting more unification back into the AST/type tree sphere? I might have a look there too. Even if the current target is simplest possible fix, I think it could be nice to get a little more understanding for possible future refactorings..
08:51:51Araqyeah that would be better
08:52:38Araqbtw I started to improve all this with the "canonicalizer.nim" module
08:52:58Araqthe idea is that 2 types are the same when they produce the same hash
08:53:15Araqand then the hash is used to generate C code too
08:53:19ozraOk. It's canonicalizing 'generally' (routine instantiations etc.) or types alone?
08:53:29Araqfor everything
08:53:39Araqbut the compiler doesn't use this module yet at all
08:54:08ozraAha. Ok. I'll look at that too for more understanding.
08:54:15Araqso the compiler would always produce object_<hash> and we get much better reproducible C code
08:54:25Araqmuch better caching
08:54:34Araqmuch better interfacing possibilities
08:55:25ozraYeah. The dream is a compiler-daemon that keeps trees cached for re-use and can re-compiles only necessary files in *zilch* time :-)
08:55:37Araqwe had that btw
08:55:46Araq--symbolFiles:on did it
08:55:50Araqit used to work
08:55:51ozraSimpler for LLVM / whatever targets later on also..
08:56:45ozraAraq: Yeah, I was thinking memory cached (which means all globals has to be factored away - since it may take on several projects from different nim-clients, while still sitting in memory)
08:57:22ozraBut, --symbolFiles is a left over right now?
08:57:39Araqthe serialization code needs to be updated
08:57:48Araqor perhaps rewritten
08:57:56Araqthe logic is still there and mostly correct
08:58:04ozraaha, ok.
08:59:52ozraOk, I guess I'll print out some hundred pages of source, make lotsa coffee, roll a lot of smokes and go out in the garden and study the code. And hopefully come up with a fix by the evening B-)
09:00:24Araqyou have a weird way of working with code
09:01:15dtscodeIts a legit way though. its what I d... nmd it might not be that good after all
09:02:23Araqprinting stuff out? you need to jump around like crazy bang irrelevant debugging code, wade through 40K of generated AST structures
09:02:47dtscoderubber ducky debugging
09:03:26dtscodeIt also helps me to lay out all of the printed sheets in the ways they are linked, rather than jumping from tab to tab on a computer
09:03:37ozraHaha, I work to much at the computer, so I at least try to reduce screen time now adays, also raiseable table so I can stand. I'd like to keep my vision 20/20 some years more ;) - It's actually surpringly efficient! You get a better grasp much faster, so when you start the active debugging session - it's much faster.
09:03:38HaCk3DAraq: i was thinking about this OS exceptions, so: mb we can just fix newException template with OSError, coz its wrong to run it with this type of errors, it doest use ref, it just returns new one
09:04:37ozradtscode: Yeah - and having long routines laid out in one long paper (back to back) and draw relational lines. I also syntax highlight _by _hand, haha. In that phase I quickly get a notion for all procs and types defined.
09:05:00ozraSort of an "index it in the brain" phase.
09:05:16Araqozra: hint: when your debugging code doesn't contain an 'if', it's almost certainly ineffective ;-)
09:05:45*dddddd joined #nim
09:06:18Araqthese things are run thousands of times before it comes to the case in the source code where it fails
09:06:33ozraI usually set a global flag when having arrived at some certain position with some certain state. Then there are echo's in strategic places with that global as guard. So I can get a specific segment of events in time rather detailed.
09:06:52gokrIts interesting how different languages pushes you to different styles. For example "long routines" is basically a bug in Smalltalk code. 20 lines is typically too much.
09:07:05Araqand now I know you're a true professional, ozra :-)
09:07:24gokrSo printing out Smalltalk code is almost completely useless.
09:07:25ozraAraq: Haha B-)
09:07:31Araqgokr: yeah yeah yeah, I've heard that before
09:07:38gokrBut its true.
09:08:10gokrAnd my point being - that kind of codebase doesn't really fit the linear flow of paper.
09:09:07ozragokr: Small routines are best option in most langs, but when it comes to some of these routines in the compiler, they're mostly long case's - which can be "seen" as procs - it would just be so much unnecessary formalia passing the state of 10 vars to each branch... So, in imperative reality, for speed, and all things accounted - these could be 'viewed' as being several procs ;-)
09:09:21gokrI am not saying it always makes for "better code", just pointing out that I can't even remember printing out code.
09:10:19Araqgokr: neither do I, I don't think printing out things has much to do with average method lengths
09:10:27ozraAnd, the size of routines doesn't affect the pros of printing in my imo. But, yeah, it probably is a rather unorthodox style. I often solve bugs in my dreams also, haha.
09:10:31ozraAh, yeah.
09:10:34ozra:)
09:10:52gokrWell, in some ways it does. I used to print out some stuff when I was young - long winding nested ifs in loops etc.
09:10:55gokrPage up and down.
09:11:37ozraI guess the main reason for me is getting some sun and smelling the flowers in the garden ;-)
09:11:47*Tennis joined #nim
09:12:00ozraAnd, I don't smoke indoors ;)
09:12:25gokrStop smoking ;)
09:12:29*jaco60 joined #nim
09:13:38*gour joined #nim
09:13:42ozragokr: I held up for 5 1/2 years. Then I decided "when this project is over, I'm gonna start smoking again". Bought a pack resting on the table. And, when the project was done and invoiced, I lit up the first smoke. Felt like I'd never stopped. Will never quit again. Unless I get KOL.
09:16:40gokrHow old are you?
09:17:00*kas joined #nim
09:17:06gokrAraq: Peeked at the VM, yeah, doesn't look too complicated - we can revisit it when Ni has matured a bit more.
09:17:17ozra37
09:17:57gokrHope you don't regret it
09:19:33gokrAraq: Btw, did you get our 3dicc Urho stuff rebased to 1.4?
09:19:46Araqgokr: yes
09:19:50gokrSuper
09:20:16*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:20:49Araqwrote my own "patch" tool for it
09:21:03Araqthen I figured it doesn't help and did it manually ... *cough*
09:21:18Araqbut this tool will be ready one day ...
09:21:21*kas quit (Ping timeout: 250 seconds)
09:21:21gokrYeah, it was messy. TONS of changes to some of those files
09:21:33ozragokr: Yeah, well, rather die early then not live at all ;-) - cool to hear the VM might be leveraged :)
09:22:23gokrI have no idea how fast the VM is though. But I presume "nippy for an interpreter".
09:25:03Araqgokr: well it's not that messy and I gave it some heuristics, but this time doing it manually was faster
09:25:50AraqI could give it c2nim C++'s parser and see what happens
09:30:19*Demon_Fox joined #nim
09:30:20*rgv151 joined #nim
09:33:02gokrOk, gotta go, later
09:34:22*johnsoft joined #nim
09:46:38*woadwarr_ joined #nim
09:49:06*woadwarrior quit (Ping timeout: 264 seconds)
09:49:10*Gonzih quit (Ping timeout: 256 seconds)
09:50:14*Ven joined #nim
10:04:04*gour quit (Quit: Using Circe, the loveliest of all IRC clients)
10:07:10*gour joined #nim
10:08:44*gour quit (Remote host closed the connection)
10:10:04*gour joined #nim
10:13:44*don_alfredo joined #nim
10:15:58ozraAraq: Is there support for "auto abstracts" of generic objects, so to speak? That is, can: ```type A[T] of object {.inheritable}``` be used like ```proc takes–A–like(a: A)``` and then all non generic fields are accessible in `a` inside `takes–A–like`?
10:17:10Araqquite right
10:17:22don_alfredohello. I am having a problem with clang-3.6.1 (installed via macports) on osx 10.9.5. clang just eats up all memory consuming all CPU when compiling stdlib. notice, clang 3.5 works just fine
10:17:27ozraNeat.
10:17:45Araqproc p(a: A) is a shortcut for proc p[T](a: A[T])
10:18:17AraqI still don't know what proc p(a: A, b: A) means though :-)
10:18:27ozraAraq: Aha, so it specializes the proc anyway - even if no [T] fields are used?
10:18:33Araqsame T or 2 Ts?
10:18:41Araqozra: yes, unfortunately
10:18:46ozraNo T's
10:18:49ozraOk.
10:19:09ozraSo then a abstract A is needed for the common case procs.
10:19:19Araqdon_alfredo: doesn't sound like our problem then ?
10:19:58don_alfredom... yes, I agree. I just wanted to know if anybody stubled upon this too
10:20:28don_alfredoperhaps it is a glitch on my machine only
10:21:58don_alfredoalso gcc 5.1 works too
10:30:15*Tennis left #nim ("Leaving")
10:33:58*gour quit (Remote host closed the connection)
10:36:50HaCk3Dguys
10:36:53HaCk3Dwtf
10:36:57HaCk3Dnim i
10:36:58*kas joined #nim
10:36:59HaCk3Draise newException(OSError, "azazaz")
10:37:04HaCk3Dtype is OSErrpr
10:37:06*don_alfredo quit (Read error: Connection reset by peer)
10:37:09*smart joined #nim
10:37:09HaCk3Dits okay
10:37:12HaCk3Dbut
10:37:16HaCk3Dnim i
10:37:18HaCk3Dimport os
10:37:21HaCk3Draise newException(OSError, "azazaz")
10:37:28HaCk3Dtype = ref OverflowError
10:38:18HaCk3Dnvm about "nim i", just nim c
10:47:52*milosn quit (Read error: Connection reset by peer)
10:47:56*gour joined #nim
10:48:09*milosn joined #nim
10:50:11*kas_ joined #nim
10:50:22*kas quit (Ping timeout: 272 seconds)
10:51:22*coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
10:51:34*coffeepot joined #nim
11:00:04AraqHaCk3D: no idea what you're talking about
11:03:13*JinShil joined #nim
11:08:57*BitPuffin|osx joined #nim
11:24:55ozraHaCk3D: If you do not know english very well, just try to say it again with other words.
11:25:05HaCk3DAraq: i was testing some exceptions
11:25:16HaCk3Dmade a new empty file
11:25:29HaCk3D raise newException(OSError, "test")
11:25:46HaCk3Dcompiled it
11:26:56HaCk3Din a newException template
11:27:23HaCk3Dive added an echo for exceptn
11:27:52HaCk3Dwhen i run it
11:28:02HaCk3Dit shows: type mismatch: got (typedesc[OverflowError])
11:28:04HaCk3Dits okay
11:28:13*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
11:28:16HaCk3Dbut when i add "import os"
11:28:19*banister joined #nim
11:28:21HaCk3Dand rerun it
11:28:30smartupdate on clang 3.6 troubles: reinstalled llvm 3.6.1 without the polly optimizer and now it works ok
11:28:39HaCk3Dtype mismatch: got (typedesc[OverflowError])
11:28:39*smart is now known as don_alfredo
11:29:32*bjz joined #nim
11:29:37ozraIs there a troubleshooting page for Nim compiler? don_alfredo : would be great if it was added to something like that, if anyone else has the problem later on
11:29:57don_alfredoozra: no idea
11:30:12*tennix quit (Remote host closed the connection)
11:31:49ozradon_alfredo: I'll just make a local todo note, if I get around to it. I'll enter it.
11:33:41don_alfredoozra: note also nim showed a stacktrace from a hanged clang only when I ran it with --verbosity:2, otherwise it was silent
11:34:09*tennix joined #nim
11:34:47ozraok
11:37:02*tennix quit (Remote host closed the connection)
11:39:44*tennix joined #nim
11:40:04Araqdon_alfredo: the polly optimizer is a vectorizer, right?
11:42:55don_alfredom... I guess it is
11:43:01*dddddd quit (Ping timeout: 264 seconds)
11:43:12*wb joined #nim
11:44:04*tennix quit (Ping timeout: 252 seconds)
11:45:29don_alfredoAraq: the effect I witnessed was clang stacktraced on a random file from nim's stdlib, and its processes didn't quit consuming all RAM and CPU
11:58:33r-kuJehan mentione new lambda syntax on forum. anywhere i could read on that?
12:06:51*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:12:49Araqr-ku: it's just an 'import future' away
12:14:23r-kuoh wow, slick
12:14:45*JinShil quit (Quit: Konversation terminated!)
12:14:54*Ven quit (Ping timeout: 264 seconds)
12:15:05*banister joined #nim
12:15:10*banister quit (Max SendQ exceeded)
12:28:34*woadwarrior joined #nim
12:30:32*Kingsquee quit (Quit: Konversation terminated!)
12:30:43*woadwarr_ quit (Ping timeout: 255 seconds)
12:44:49*kas_ quit (Ping timeout: 264 seconds)
12:45:30*stefantalpalaru joined #nim
12:48:43stefantalpalaruHi. Is there something wrong with the test runner in the devel branch? It reports "Failure: reNimcCrash" for all tests even though they build and run just fine.
12:49:42Araqstefantalpalaru: the tester now uses compiler/bin/nim always iirc
12:49:52Araqand not the 'nim' in PATH
12:50:08Araqozra knows more
12:50:22Araqand I think it's wrong ... the tester should use what's in PATH
12:50:34stefantalpalaruI ran "./koch test" in an unmodified devel branch
12:50:58Araqotherwise we need to make yet another option for the tester ... reinventing PATH ...
12:51:22*kas joined #nim
12:58:02stefantalpalaruit works with 'PATH="/<full path>/Nim/bin/:$PATH" ./koch test'
12:58:23Araqinteresting
13:03:23*woadwarr_ joined #nim
13:04:23stefantalpalarufor the record, gctest fails with --gc:markAndSweep
13:04:35Araqwe know
13:05:49*woadwarrior quit (Ping timeout: 255 seconds)
13:11:37*don_alfredo quit (Ping timeout: 256 seconds)
13:18:33stefantalpalaruI made the TGenericSeq extension conditional for gogc on https://github.com/nim-lang/Nim/pull/2851
13:22:01*johnsoft quit (Ping timeout: 264 seconds)
13:22:30*dalarmmst joined #nim
13:22:55*johnsoft joined #nim
13:23:09*boopisaway is now known as boop
13:28:08*shiyaz_ joined #nim
13:28:21*Ven joined #nim
13:31:03*shiyaz quit (Ping timeout: 276 seconds)
13:35:02*Senketsu quit (Quit: Leaving)
13:37:28*don_alfredo joined #nim
13:41:46*jszymanski quit (Ping timeout: 252 seconds)
13:43:43*jszymanski joined #nim
13:45:47*darkf quit (Quit: Leaving)
13:46:20*darkf joined #nim
13:47:19*kas quit (Ping timeout: 245 seconds)
14:00:15*zaquest quit (Read error: Connection reset by peer)
14:02:12*woadwarr_ quit (Quit: My Mac has gone to sleep. ZZZzzz…)
14:06:35*woadwarrior joined #nim
14:08:32*milosn_ joined #nim
14:08:43*milosn quit (Read error: Connection reset by peer)
14:11:25*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:17:52*don_alfredo quit (Quit: WeeChat 1.2)
14:19:59*milosn_ is now known as milosn
14:26:00*askatasuna joined #nim
14:26:00*Sentreen joined #nim
14:30:57*Gonzih joined #nim
14:45:15*Arrrr joined #nim
14:54:23*Sentreen quit ()
15:08:14*Matthias247 joined #nim
15:17:15*wuehlmaus joined #nim
15:22:37scoeriDoes anyone know what the type of varargs[T] is and how I can bind the resulting sequence to a variable of type seq[T]?
15:36:07*brson joined #nim
15:36:59*Ven joined #nim
15:44:29*zaquest joined #nim
15:45:08*darkf quit (Quit: Leaving)
15:47:29*ChrisMAN joined #nim
15:49:38*Matthias247 quit (Read error: Connection reset by peer)
15:56:31*wuehlmaus quit (Remote host closed the connection)
16:00:15*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:00:29*kas joined #nim
16:02:48*yglukhov____ quit (Ping timeout: 244 seconds)
16:03:59*woadwarrior quit (Ping timeout: 246 seconds)
16:05:41*dddddd joined #nim
16:13:09*coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
16:25:46*Arrrr quit (Quit: WeeChat 1.2)
16:29:43*Arrrr joined #nim
16:42:01*woadwarrior joined #nim
16:42:58*Jesin joined #nim
16:43:39*HaCk3D left #nim (#nim)
16:46:07*Arrrr quit (Ping timeout: 265 seconds)
16:52:42*stefantalpalaru quit (Quit: Leaving)
16:53:12*Arrrr joined #nim
16:53:24*yglukhov_____ joined #nim
16:59:39*johnsoft quit (Ping timeout: 265 seconds)
17:00:16*johnsoft joined #nim
17:08:24*yglukhov_____ quit (Quit: Be back later ...)
17:08:59*zahary quit (Read error: Connection reset by peer)
17:09:26*zahary joined #nim
17:17:58*TEttinger quit (Ping timeout: 256 seconds)
17:25:47*woadwarrior quit (Quit: Textual IRC Client: www.textualapp.com)
17:27:16*BitPuffin|osx quit (Ping timeout: 265 seconds)
17:29:06*skroll1 quit (Ping timeout: 252 seconds)
17:29:59*yglukhov_____ joined #nim
17:56:01*skroll1 joined #nim
18:01:02*wuehlmaus joined #nim
18:04:52apense@scoeri if you have something like proc vartest[T](x: varargs[T]): seq[T]
18:05:12apense@scoeri then result = @x should give you what you want
18:05:39apensescoeri, the `@` is converting it to a seq
18:06:11apenseif that doesn't work for some reason, you could do it step-by-step I guess, with result = newSeq[T](len(x)) and then adding each element
18:10:19apensescoeri, talking about type: "Arguments that are passed to a ``varargs`` parameter are wrapped in an array
18:10:19apense constructor expression."
18:10:49apensescoeri, so the '@x' is basically just transforming an array into a sequence
18:11:40fowl@ is a function on openarray, it isn't some special syntax
18:11:42apensescoeri, you treat it just like you would an openarray parameter, which you have to convert to a sequence
18:11:56apensehaha beat me to it
18:12:20fowlThat shocked me when I found that out lol
18:13:38Arrrrdoes `@`([1,2,3]) work?
18:13:54*banister joined #nim
18:14:33fowlArrrr: it should
18:14:56ArrrrAnd @1 ?
18:15:07Arrrror @ 1 ?
18:15:30fowlNo. 1 isn't an array
18:16:45ArrrrI confused it with varargs
18:19:23apenseArrrr, `@`([1,2,3]) does work. just checked it
18:19:33fowl@ is high binding so that @arr.len is (@arr).len
18:20:19fowlSo you can use it for cool stuff jester uses @"foo" to refer to query parameters iirc
18:20:57fowlContrast to $arr.len which would parse as $(arr.low)
18:21:45Araqfowl: oh, I should add this to my Nim introduction
18:23:11ArrrrPlease, call it "Nim for Nimrods"
18:23:21*kas quit (Remote host closed the connection)
18:23:34Araqit already has a name
18:24:03ArrrrI hope is not "Learn you a Nim"
18:24:50fowlSprechen sie Nim
18:25:05fowlNo wait thats a question
18:27:29apenseIch spreche Nim, I think. I forgot my German
18:34:36*miglo joined #nim
18:37:16*bockmabe quit (Remote host closed the connection)
18:38:07*vikaton quit (Quit: Connection closed for inactivity)
18:43:36reactormonkAraq, so how exactly do you run the tester to compare two commmits?
18:44:25Araqdepends on what I'm doing
18:44:51Araqusually I do 'tester cat foobar' where I first ensured it's all green before
18:45:28Araqthe tester can also diff with the results of the commit before that but I forgot how
18:46:22*Jesin quit (Quit: Leaving)
18:48:41pigmejhey everyone :)
18:50:36*Jesin joined #nim
18:51:32*g_ joined #nim
18:51:53g_...
18:51:56*g_ is now known as Guest95793
18:53:36Araqhrm Jehan knows how to use .goto from looking at how it's implemented in the compiler. Nice.
18:54:03migloHello! I've studied the oop example at nim-by-example.github.io/oop/ after reading the tutorial and what I would like to know is whether its possible to encapsulate data as it is usually done in other programming languages by use of classes and the keyword "private"?
18:54:21Araqso ... dom96 can you fix this: http://forum.nim-lang.org/t/1319
18:59:27Guest95793what are the best nim graphics
19:03:30Araqmiglo: everything that has no export marker (the star) is private
19:04:35Araqif your question is: can a 'private' section be done within a 'class' macro then the answer is 'yes' to that.
19:08:21AraqGuest95793: I think the stdlib's graphics.nim is still a good starting point. It depends on SDL.
19:08:57migloAraq: thanks for the reply ; I've changed the example of https://nim-by-example.github.io/oop/ by adding to the for-loop an "echo ("name=", a.name)" and got the name on stdout but would expect that access to "name" isn't allowed due to the missing star
19:09:46Araqmiglo: the protection is module based, so if your echo is in the same module, there is no protection.
19:10:16Araqin C++ terms different "classes" in the same module are all friends to each other
19:10:17migloAraq: ok, got it - thanks
19:11:34ozrastefantalpalaru: Araq: The tester first compiles the compiler, using "nim", which has to be found via PATH. It then uses the freshly brewed "compiler/nim --lib:lib" to ensure the compiler and libs from the tested dir/repo is used. So this is curious. What more can you tell stefantalpalaru? Tests must be rock solid, so if there's anything to be improved, I'll take a stab at it..
19:11:36miglonim is a very interesting programming language
19:11:49Guest95793araq how do you choose what packages to be in the official nimble repo?
19:13:39ozrareactormonk: another way to diff, since koch ensures everything used in tests are from "current dir", is to have two repos cloned, devel in one, your branch in other. Run tests in both. Diff the results files.
19:14:04migloI see I should read the "moduls" section of the tutorial more carefully
19:15:16vbtt_Guest95793:afaik there's no restriction. Also I don't thik Araq manages the nim repo himself. Just submit your PR and see.
19:15:21vbtt_Guest95793: https://github.com/nim-lang/packages
19:15:46Guest95793ok
19:18:18dom96Guest95793: The official packages are the ones which the core dev team maintains.
19:25:51Guest95793ok
19:30:04*Arrrr quit (Quit: WeeChat 1.2)
19:34:29migloIs there maybe a binding to the wx framework existing?
19:39:29*BitPuffin|osx joined #nim
19:44:40*Guest95793 quit (Ping timeout: 246 seconds)
19:48:32*Strikecarl joined #nim
19:51:58ozraAraq: I guess "koch tests" should use "bin/nim" for the first compilation, this is the only fully deterministic process. The boot strapped compiler is always capable of building the piler... No dep on any prior nim or any path.
19:58:59ozraWow. I get a retarded point today. Just realized the "little guy with afro due and sun glasses" on the web page is the nim crown, haha. I had wondered why this little dude was everywhere, but not enough to think about it. LOL.
20:00:22fowlWat
20:01:06StrikecarlThinking the same
20:01:06ozrafowl: Imagine Hermes from futurama if you
20:01:11ozrayou've seen it.
20:01:18ozraWith white sun glasses.
20:01:21ozrahaha
20:01:23Strikecarlhow the fuck do you get that crown to a little guy with afro due and sun glasses?
20:01:51ozraAs I said, retarded score 11/10, hehe
20:02:01fowlLol I don't see it either
20:02:37ozraIt's just the little version, that are at the ends of pages... Lucky you!
20:03:31ozraeh, just the face that is. But know, I'm not gonna destroy your vision with this lunacy ;)
20:10:03Strikecarlohh that little one
20:10:04Strikecarlok
20:10:06Strikecarli'll just go now
20:10:12Strikecarl2weird5me
20:10:14*Strikecarl quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
20:10:58fowlI can't find it lol
20:11:22fowlThought u meant the big crown
20:12:07*askatasuna quit (Quit: WeeChat 1.2)
20:14:29*askatasuna joined #nim
20:28:41*gour quit (Remote host closed the connection)
20:41:12*kas joined #nim
20:49:39*Matthias247 joined #nim
20:55:14*kas quit (Ping timeout: 244 seconds)
21:06:24*askatasuna quit (Ping timeout: 246 seconds)
21:16:22*jszymanski quit (Quit: computer sleeps...)
21:32:57*johnsoft quit (Ping timeout: 252 seconds)
21:33:15*johnsoft joined #nim
21:34:54*kas joined #nim
21:35:44*yglukhov_____ quit (Quit: Be back later ...)
21:37:54reactormonkozra, wasn't there a nicer way?
21:38:43ozrareactormonk: sorry?
21:38:55ozraoh, diffing?
21:40:09ozraI didn't know there was features for it before Araq mentioned it today. I use the diff two repos style. Faster to do detail comparisons in case of failure that way.
21:40:29ozraBut then, I don't know how that feature works...
21:41:49*johnsoft quit (Ping timeout: 264 seconds)
21:43:45*kas quit (Ping timeout: 276 seconds)
21:47:40*johnsoft joined #nim
21:54:18*saml quit (Quit: Leaving)
21:55:08*Trustable quit (Remote host closed the connection)
22:04:50*johnsoft quit (Ping timeout: 252 seconds)
22:05:08*johnsoft joined #nim
22:08:04*enquora joined #nim
22:29:05AraqSystem Requirements
22:29:06AraqDOS 5.0 or better
22:29:08Araq100% IBM PC compatible with a 386 microprocessor or better and a VGA monitor
22:29:10AraqAt least 4 megabytes of total memory
22:29:19Araq<-- our goal for 2016 ;-)
22:31:10ozra640 kB ought to be enough for anybody...
22:32:44vbtt_heh
22:37:05*miglo left #nim (#nim)
22:42:52Araqthe only question is what does "DOS 5.0 or better" mean?
22:47:58*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
22:49:08flaviuAraq: 4MiB is a little high..
22:49:12*vendethiel quit (Ping timeout: 272 seconds)
22:49:24flaviucan't it get by with less?
22:49:41flaviuespecially with the standalone target.
22:50:11*vendethiel joined #nim
22:51:31AraqI'm more concerned about the VGA monitor requirement :P
22:51:58Araqbut the compiler now uses colors everywhere :P
22:53:32flaviuLooks pretty.
23:02:55*brson quit (Ping timeout: 264 seconds)
23:05:00*Matthias247 quit (Read error: Connection reset by peer)
23:10:18ozraCGA should suffice, surely! ;)
23:12:23*Senketsu joined #nim
23:18:37*saml_ joined #nim
23:25:02*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
23:33:57*Pisuke quit (Ping timeout: 240 seconds)
23:39:52*ozra quit (Ping timeout: 246 seconds)
23:48:27flaviuhuh, ranges don't have a len. I assume that's an oversight?