<< 26-11-2013 >>

00:01:18Araqfowl: well you need to discard line 91 as well as 95
00:01:55Araqthough the error message could be better of course
00:03:28fowlits discardable though
00:04:33fowloh now i get "not all cases are covered" for that case statement -_- wtf
00:05:17*EXetoC joined #nimrod
00:10:51fowlerm
00:10:52fowlnvm
00:12:08*zanoni left #nimrod ("http://quassel-irc.org - Chat comfortably. Anywhere.")
01:03:03*EXetoC quit (Quit: WeeChat 0.4.2)
01:39:19*mflamer joined #nimrod
01:50:28*mflamer quit (Ping timeout: 246 seconds)
02:03:05*DAddYE quit (Remote host closed the connection)
02:55:08*krusipo quit (Ping timeout: 272 seconds)
02:59:32*xenagi joined #nimrod
03:04:35*DAddYE joined #nimrod
03:04:50*xenagi quit (Quit: Leaving)
03:07:34*ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
03:10:58*DAddYE quit (Ping timeout: 245 seconds)
03:12:48*ics joined #nimrod
03:16:15*xenagi joined #nimrod
03:18:26*DAddYE joined #nimrod
03:18:28*DAddYE quit (Remote host closed the connection)
03:18:34*DAddYE joined #nimrod
03:28:11*xenagi quit (Quit: Leaving)
04:12:54*xenagi joined #nimrod
04:23:50*brihat left #nimrod (#nimrod)
04:42:02*OrionPKM quit (Remote host closed the connection)
04:48:48*krusipo joined #nimrod
04:54:52*xenagi quit (Quit: Leaving)
05:29:56*OrionPK quit (Read error: Connection reset by peer)
06:16:58*mflamer joined #nimrod
07:05:09*DAddYE quit ()
08:05:27*mflamer quit (Ping timeout: 272 seconds)
09:15:08*ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
09:32:36*Associat0r quit (Quit: Associat0r)
09:36:30*EXetoC joined #nimrod
09:41:29*CarpNet joined #nimrod
09:51:12C0C0http://i.imgur.com/pudAZvz.png some update, from our pathtracer - now faster a lot faster in scenes with little direct light
09:51:53zahary_cool, this is in Nimrod and open-source?
09:55:41C0C0zahary_: its nimrod sure, but currently not yet published
09:56:04C0C0(but will be once I
09:56:52C0C0(I think the math is still quite a bit off)
09:57:06C0C0but we are going to push to github sooner or later
09:58:16zahary_nice work, I have many friends working on the one of the most popular ray tracers right now - vray
09:59:04C0C0as in "maintining it" or in "using it"?
09:59:54zahary_programmers on the team - the company that makes it is based where I live
10:00:00C0C0cool
10:04:45C0C0always loved doing computer graphics^^
10:05:17C0C0visual results make programming quite rewarding
10:05:28C0C0visual bugs on the other hand.... are a pain
10:06:50zahary_and it's just you and the machine, not dozens of frameworks that you have to glue together like in most other software endeavors nowadays
10:15:27Araqcan this raytracing be made fast enough for 60fps on today's machines?
10:15:44zahary_only in toy projects
10:16:18Araqthat's what I feared ;-)
10:16:27zahary_intel was going to create a video card featuring 128 x86 cores, which was supposed to use a real-time ray tracer, but the project got canceled
10:16:39AraqXD
10:17:08zahary_it now lives on as Xeon Phi marketed as a super-computing platform
10:17:13zahary_http://en.wikipedia.org/wiki/Intel_MIC
10:17:19zahary_http://en.wikipedia.org/wiki/Larrabee_(microarchitecture)
10:25:19fowl128 cores
10:25:27fowlthe future :o
10:25:39zahary_reading from wikipedia, it seems I overestimated this number
10:25:54zahary_the current xeon phis have 60 cores
10:31:56C0C0Araq: have a look at raytracey.blogspot.de <- this guy
10:32:09C0C0he is doing near realtime path tracing
10:33:36C0C0or look up brigade and octane
10:33:59C0C0also: raytracing is fast enough as far as I know, but path tracing is not
10:34:30C0C0(however simple raytracing doesn't really improve graphics that much over rasterisation + some tricky shaders)
10:42:59*ics joined #nimrod
10:52:12zahary_I guess the first games using ray tracers will exploit the fact that ray-tracing allows you to do more stylistic and distinctly looking graphics, not aiming for photo-realism (or exploit excessive light refractions in the gameplay somehow)
10:53:38zahary_it's bit boring that all modern GPU games look the same - your graphics can be interesting in other ways:
10:53:39zahary_https://www.youtube.com/watch?v=kD5F54SZkMA
10:54:15fowlshaders
11:02:47*ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
11:03:32Araqzahary_ did you get my message about removing implicit nkDo creation?
11:03:40zahary_nope
11:03:50Araqit's a WTF feature really
11:04:24Araqinstead we should have a simple macros.skipDo proc so that a macro can easily support both syntaxes
11:05:40Araqanything that is not wysiwyg for ASTs is really a bad idea for the macro system
11:07:02zahary_skipDo sounds like something most users will forget to do all the time. we could do the normalization in the other direction - no arguments do is reduced to statement list and statements lists are handled better in sigmatch
11:08:33Araqperhaps
11:09:17Araqon the other hand macros need already to use CallKinds otherwise you end up supporting foo(a, b) but not foo a, b
11:09:44Araqso that's a problem that we already have
11:10:30Araqmaybe we need to map TNodeKind -> MoreUsefulNodeKind
11:10:50Araqand make the macros API much easier at the same time
11:12:03zahary_OTOH, if we decide to do normalization in one case, we could start using it in general - reduce the nkCommand and nkCall to the same thing
11:12:03zahary_your idea of a higher level API could also work
11:12:44Araqwell the API still sucks
11:13:56Araqthe reason is of course that it never really was designed by me, when I wrote it I was concerned about how to implement it in evals.nim
11:14:49zahary_after the type classes and a bit of bug fixing, I'll try to get my hypolang working btw - one of the ideas I want to test is how easy would be to provide macros on my s-expression based grammer
11:15:48Araqwhat? you have an s-expression based grammar?
11:16:14Araqwhen did that happen? ;-) fed up with syntax games?
11:16:26zahary_well, it's the indentation based grammar with horizontal parsing and heavy use of blocks that I have described before
11:17:25Araqalright
11:17:32zahary_in the end, the only element is a "function call", hence s-expression
11:20:55AraqI still think you can't do without keywords
11:21:32Araqthe keywords also help incredibly when you pre-analyse a macro to make it hygienic
11:21:45zahary_there are two levels of infix operators; epxressio-level like + and - and call-level like | and `if`
11:22:19Araqiirc Scheme's solutions for hygiene are much more complex than Nimrod's as Scheme has no keywords
11:22:43fowllisp has keywords
11:22:52fowldef/lambda
11:24:22zahary_I see what you mean, but my objection against keywords is that it prevents splicing into keyword positions in the syntax
11:24:34zahary_I cannot have a macro taking as argument "var" or "let" and then doing
11:24:56zahary_arg x = ...
11:25:40zahary_so, I don't want to give a special privileges to keywords int the grammar itself. now certain symbols act in special ways for the compiler in the semantic pass, etc
11:26:13Araqfowl: in Scheme they can redefined afaik
11:26:20zahary_i.e. the control flow "keywords" are known and recognized by the compiler
11:26:43Araqok I see
11:30:58fowli just realized you can avoid this now: x = consumetoken(); while x.notSomething: stuff; x = consumetoken()
11:31:18fowlwhile(var x = consumetoken(); x.notsomething): stuff
11:31:26Araqyou always could with 'while true'
11:31:38Araqand that's what I still prefer
11:55:53*noam quit (Read error: Connection reset by peer)
11:56:18*noam joined #nimrod
12:23:05Araqsee you later
12:25:44*zahary_ left #nimrod (#nimrod)
12:46:08*BitPuffin joined #nimrod
13:08:21EXetoCBitPuffin: hey, want a Nokia 5100 for $10?
13:17:51*Jackneill joined #nimrod
13:19:32*zahary_ joined #nimrod
13:25:53BitPuffinEXetoC: you reeaaaally think it's worth that much? :P
13:25:59BitPuffinoh my oh my
13:26:14BitPuffinhave you ordered a new phone?
13:26:45BitPuffinkeep the phone and hack it
13:26:48BitPuffinput nimrod on it
13:26:55BitPuffinwrite an os xD
13:35:34EXetoCBitPuffin: sure, it has a flashlight and everything!
13:36:08EXetoCBitPuffin: yes I got a Samsung Mega. it's slightly better than my old phone imo
13:39:46*ics joined #nimrod
13:42:17EXetoCBitPuffin: A Nokia 5100 OS written in Nimrod? oh my
13:45:54BitPuffin:P
13:58:32EXetoCstupid GTK file dialog. mid-string searches pls
13:59:38*ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
14:08:38BitPuffinapparently there has been a new release of wxwidgets
14:09:32Varriount:O
14:09:53BitPuffinhttp://www.wxwidgets.org/
14:10:06BitPuffinif anyone wanna have some binding fun
14:10:22EXetoCdamn, long 2.x lifespan
14:10:35BitPuffinit would be useful for people coming over to be able to use something other than gtk+
14:10:53BitPuffinlol yeah :P
14:10:56VarriountDoesn't WxWidgets have only a C++ interface (How do you even wrap that?)
14:11:02BitPuffinbut we aren't really people to talk
14:11:11BitPuffinwe've had quite a long 0.x lifespan in nimrod :P
14:11:21BitPuffinVarriount: c2nim supports C++
14:11:25BitPuffinand nimrod can compile to C++
14:11:39Varriount*can*
14:11:58BitPuffinanyways it's possible
14:12:02BitPuffineasier than in other languages
14:12:11EXetoCnot everyone might want to do that unfortunately
14:12:14BitPuffinhttps://github.com/Araq/Nimrod/blob/master/examples/c%2B%2Biface/irrlichtex.nim
14:12:30VarriountAnyone have any documentation on nake files? I keep hearing you guys mention them, and only know that they are somewhat similar to make files.
14:12:55BitPuffinhttps://github.com/fowlmouth/nake
14:13:21VarriountOoh, shiny.
14:13:24BitPuffinDocumentation
14:13:25BitPuffinRun the docs task of the included nakefile to generate the user API HTML documentation. This documentation explains what symbols you can use other than the obvious task to define tasks. If you installed from babel you first need to go to your babel directory. Unix example:
14:13:35BitPuffinblabla
14:13:37BitPuffin:P
14:13:46shevynakefile?
14:13:48shevywhat is that
14:13:49VarriountBitPuffin, I meant, documentation of the nake project *itself*
14:13:54BitPuffinshevy: it's like make and rake
14:14:08BitPuffinVarriount: ahh, well ther you go :P
14:14:15shevynaked
14:14:18VarriountExcept not as mind-numbingly tedious
14:14:21BitPuffin-_-
14:14:25shevyrun these files only when sitting naked in a chair
14:14:27BitPuffinyeah exactly Varriount xD
14:14:35*Varriount looks at make files. Varriount cries.
14:14:45BitPuffinbut I'm always naked in a chair
14:14:49BitPuffineven when I'm walking around
14:14:50VarriountO_o
14:15:01BitPuffinyes
14:15:10*Varriount slaps BitPuffin around a bit with a nano mackeral.
14:15:37VarriountRats, I was hoping for a universe-sized mackeral.
14:17:15BitPuffinthat never gets old :P
14:17:28VarriountAt least, not for me!
14:18:09BitPuffinyet Araq let's you get away with it xD
14:18:39VarriountAraq's time zone only mostly overlaps with mine.
14:19:12BitPuffinyou mean does not
14:19:13BitPuffin?
14:20:01VarriountNo, I mean, 'does'
14:22:21BitPuffinbut that means that you are up at the same time doesn't it?
14:22:38VarriountMy time zone is -5 hours, his is, I believe, +1 hour
14:23:02VarriountSo our 'waking hours' only mostly overlap.
14:23:48BitPuffinyes, so if they overlap you are both awake at the same time
14:23:58VarriountYes.
14:24:16VarriountDoes Mr. Mackeral need to show you?
14:24:22BitPuffinah but you mean that they _only_ mostly overlap, they don't always :P
14:24:25BitPuffinno ;_;
14:24:41BitPuffinI believe I'm in +1 to
14:24:43BitPuffino
14:24:54BitPuffinso me and Araq are best friends
14:25:02BitPuffinobviously :P
14:25:04VarriountBitPuffin, you live.. in Great Britain?
14:25:10BitPuffinall you need is the same timezone
14:25:17BitPuffinnein, sweden jaaa, Varriount
14:25:44VarriountAh, I think I got your origin mixed up with another user.
14:26:06*q66_ joined #nimrod
14:26:33VarriountBitPuffin, answer me this: Why is it that all my favorite artists, whether it be games or music, come from Sweden or the surrounding countries?
14:27:12BitPuffinVarriount: we just happen to be more talented
14:27:27BitPuffinsays the guy who doesn't believe in talent
14:27:30VarriountObviously. :P
14:27:32BitPuffinVarriount: we work harder :P
14:27:48Varriount^ Also likely, we US Americans are lazy.
14:27:57BitPuffinwe have very high work ethic
14:28:33EXetoCAmon Amarth is from my home town apparently. awesome innit
14:28:35VarriountAnd, if I'm not mistaken, a collectivistic culture (although I could be confusing Sweden with another country again)
14:28:50*Varriount likes his intro to communications class
14:29:27*q66 quit (Ping timeout: 246 seconds)
14:29:27BitPuffinEXetoC: I've seen them live
14:30:00EXetoCnice
14:30:26BitPuffinspawn of possession is the best swedish band
14:30:28BitPuffin* band
14:31:52EXetoCsounds alright
14:32:06VarriountSounds like a metal band.
14:32:31BitPuffinVarriount: it is _the_ metal band
14:33:00EXetoCBlotted Science is another good technical death metal band
14:33:29VarriountBitPuffin, the only metal bands I tend to like are the symphonic ones.
14:34:17BitPuffinEXetoC: I've added them to my playlist
14:34:25EXetoC\m/
14:34:31BitPuffin\m/
14:34:39BitPuffin|
14:34:41BitPuffin\
14:34:44BitPuffin o /
14:34:47BitPuffin |
14:34:49BitPuffinoops
14:35:08BitPuffin /w\
14:37:13EXetoClål
14:37:25*Varriount slaps BitPuffin and EXetoC around a bit with a siamese mackeral.
14:39:40EXetoCBitPuffin: is wxwidgets your toolkit of choice?
14:39:50EXetoCI think I'll be giving IUP a go
14:39:53BitPuffinEXetoC: I don't do GUIs atm
14:39:57BitPuffinso I don't have one of choice
14:40:00BitPuffinIUP?
14:40:01Varriount^
14:40:25BitPuffinwhat is google even
14:41:20BitPuffinEXetoC: By the way if you like oldschool goodness give nocturnus "the key" a listen
14:44:03VarriountSo BitPuffin, What are you working on atm?
14:44:25BitPuffinVarriount: too much
14:47:35BitPuffinVarriount: trying to get a game project done for december
14:47:44BitPuffinand even if I were to succeed with getting it done on time
14:47:54BitPuffinI'd still have to create the website to put it up on
14:48:08BitPuffinand not only that I still have a website thingy I need to finish for some guy
14:48:15BitPuffinand I also have a full time internship
14:48:28BitPuffinenergy--
14:49:35BitPuffinand I didn't even mention my blog website because I'm delaying it for the other stuff
14:50:34*OrionPK joined #nimrod
14:51:21BitPuffinVarriount: what about you?
15:05:28VarriountBitPuffin, I'm trying to get inner-closure-iterators working.
15:05:36BitPuffinVarriount: ah cool!
15:05:46VarriountSo that my itertools library will work.
15:06:02BitPuffinwhat does it provide?
15:06:35BitPuffinI hope https://github.com/Araq/Nimrod/issues/686 is fixed soon
15:06:49VarriountFunctions useful for chaining, combining, and managing iterator functions and objects that support for loops.
15:07:03*shevy left #nimrod ("I'll be back ... maybe")
15:07:06BitPuffinEXetoC: okay time to listen to the blotted science thingy, but first pee
15:07:25VarriountBitPuffin, the best way to fix a bug is either to fix it yourself, or find out as much as possible about it, to help those who can fix it.
15:13:32BitPuffinVarriount: yeah, I'd like to fix it but read above and you might see why I can't. Me and Araq attempted to fix it but stumbled in to zahary's code which he didn't know enough about
15:13:55VarriountBitPuffin, Yeah.
15:14:15VarriountBitPuffin, in my case, I'm stumbling through code that even Araq admits is complicated.
15:14:58BitPuffinhaha :P
15:15:33VarriountRight now, I've narrowed down things and found what is wrong (a node is being duplicated) but I have no idea how to prevent the duplication.
15:16:41BitPuffinsounds nasty
15:17:42VarriountYeah. Essentially, a hidden parameter that is passed to lambdas and iterators is being duplicated. The parameter is needed to pass in environment variables and such.
15:18:01BitPuffinEXetoC: is it just the first song or is there no vocals? :P
15:18:19BitPuffinVarriount: hmm
15:19:36VarriountBitPuffin, on the upside, I'm learning all about lambda lifting.
15:20:13Varriount(Which bears no relation to Lama Lifting)
15:20:28BitPuffinVarriount: that's nice, always cool when you learn something :P
15:27:24EXetoCBitPuffin: nope no vocals
15:28:20BitPuffinEXetoC: it's pretty damn awesome though
15:32:00EXetoC:>
15:46:41*Varriount_ joined #nimrod
15:49:25*Varriount quit (Ping timeout: 272 seconds)
15:52:39*Varriount joined #nimrod
15:54:52*Varriount__ joined #nimrod
15:55:01Varriount__Ok, this is getting ridiculous.
15:55:45*Varriount_ quit (Ping timeout: 272 seconds)
15:57:18*Varriount quit (Disconnected by services)
15:57:23*Varriount__ is now known as Varriount
15:59:07*BitPuffin quit (Read error: Operation timed out)
16:00:51*Associat0r joined #nimrod
16:00:51*Associat0r quit (Changing host)
16:00:51*Associat0r joined #nimrod
16:21:46*Varriount_ joined #nimrod
16:22:59*Varriount quit (Ping timeout: 272 seconds)
16:25:31*brihat joined #nimrod
16:29:19*Varriount_ quit (Ping timeout: 272 seconds)
16:40:25*OrionPKM joined #nimrod
16:52:37*q66_ is now known as q66
17:05:12*MFlamer joined #nimrod
17:16:06*VarriountBackup joined #nimrod
17:16:26VarriountBackupSo, apparently my home internet connection is down.
17:20:39*VarriountBackup quit (Ping timeout: 250 seconds)
17:30:18fowlevery time that happens to me i think its the Big One
17:47:23*ics joined #nimrod
18:01:59*DAddYE joined #nimrod
18:07:29*silven quit (Read error: Operation timed out)
18:09:31*silven joined #nimrod
18:18:53*gradha joined #nimrod
18:19:40*CarpNet quit (Quit: Leaving)
18:30:04*Varriount joined #nimrod
18:30:53Varriountdom96: The Windows Builders are going to be down until my ISP fixes whatever is wrong with the connection. Sorry.
18:31:29VarriountThe only reason I'm online at the moment is because I'm using my college campus' internet connection.
18:36:57AraqVarriount: sounds like you finally have enough time for nimrod :-)
18:37:09Araqthe internet is too distracting to get work done
18:38:50*shodan45 joined #nimrod
18:44:25VarriountAraq: I can't access my desktop, so I don't have any simple means of building nimrod.
18:45:17Araqwell you can read nimrod's source code and mediate over it instead
18:45:25VarriountTrue.
18:45:34gradhamaybe your college can provide you with a machine on top of that network connection
18:46:08Araq*meditate
18:46:29VarriountAraq: I've narrowed down where the additional env argument for lambda lifting is coming from, the difficult part is, how do I tell if an env parameter is already there?
18:46:54AraqtfCapturesEnv in sym.typ.flags
18:47:20VarriountAh, I tried that, but then makeClosure throws an error.
18:47:23Araqbut you have to adapt the code slightly so that holds iff there is an env
18:57:14*BitPuffin joined #nimrod
19:25:54*OrionPKM quit (Remote host closed the connection)
19:33:13*DAddYE quit (Remote host closed the connection)
19:33:49*DAddYE joined #nimrod
19:40:10OrionPK /join #nimtest
19:40:18OrionPK*sigh*
19:40:22OrionPKit's gonna be one of those days
19:40:36EXetoCwas someone working on rust-style enumerators?
19:42:47VarriountI don't know, what are rust style enumerators.
19:43:41OrionPKvarriount, earlier you did something that made my custom irc client htink you were using an action
19:43:57OrionPKe.g using a /me style message or something
19:44:25VarriountWell, that was with my XChat client, I'll see if the freenode webchat client supports it too
19:44:41OrionPKI use xchat regularly, so i dont think it's that...
19:44:45OrionPKit was when you said "So, apparently my home internet connection is down."
19:45:09VarriountI didn't use any action command then.
19:45:22OrionPKi know it wasnt an action, but for some reason the client interpreted it as that
19:45:33VarriountI might have ghosted my nick, was that it?
19:45:36OrionPKmeaning it had "1ACTION"
19:45:44OrionPKghosted your nick?
19:45:49*gradha jumps and gets 1UP
19:45:53Varriount./ns ghost
19:46:10OrionPKhmm
19:46:12VarriountIt kills a client using your username
19:46:32VarriountOr in most cases, simply disconnects an already dead connection.
19:47:19OrionPKwell, i'll just have to watch out for it again I guess
19:49:44Varriountgradha: I saw your Ouroboros lib, I like it.
19:50:46OrionPKim probably going to use it a bit w/ familiar
19:51:01OrionPKwant all my js/css embedded in the exe for release builds
19:51:14Varriountfamilier?
19:51:30OrionPKhttps://dl.dropboxusercontent.com/u/417554/familiar-dark.png
19:51:51VarriountIRC Client in Nimrod?
19:52:02OrionPKircclient/webserver, yes
19:52:30gradhaVarriount: thanks, did you test it under windows?
19:52:42OrionPKive got it running on windows, osx and debian/ARM :)
19:52:47VarriountOrionPK: Be careful, I believe that freenode is very touchy about anything proxy-like connecting to their network.
19:53:01OrionPKvarriount what makes you say that?
19:53:24VarriountOrionPK: Freenode has banned various (most) webchat IRC clients.
19:53:41VarriountBecause they act as proxies, and allow users to evade bans.
19:53:53VarriountSee: Mibbet
19:53:56Varriount*Mibbit
19:54:03OrionPKthis isnt a proxy or a service
19:54:09OrionPKeach person has to host their own instance of it
19:54:26Varriountgradha: I haven't actually used it yet, I've just read through the API and the code a bit.
19:54:48EXetoCVarriount: enumerators in Rust can represent individual variants of a tagged union
19:55:07EXetoCMFlamer: is that what you're working on, or have I misunderstood?
19:55:08gradhaVarriount: that's really weird, you read other people's code?
19:55:21*gradha walks away a little bit fom Varriount
19:55:30EXetoCfreak
19:55:39Varriountgradha: Yes. It helps me learn not only the inner workings of a library, but the techniques used therein.
19:56:14Varriount"A user interface is well-designed when the program behaves exactly how the user thought it would." - Joel Spolsky
19:56:31VarriountThat axiom also applies to library API's
19:57:03EXetoCwhat does it not apply to? :p
19:57:16VarriountEXetoC: Stories
19:57:45VarriountIf people got exactly what they expected with regards to stories, there would be no surprise.
19:58:32gradhapeople watch Apple's keynotes expecting a surprise, they get one when they aren't surprised
19:58:46VarriountEXetoC: How fast does the client run/what kind of performance does it get?
19:58:59VarriountOops, I meant, OrionPK
19:59:09OrionPKhm?
19:59:37OrionPKin terms of what
20:00:59VarriountMemory usage? CPU usage?
20:01:14OrionPKoh, like a megabyte of memory, <1% cpu
20:01:30VarriountHm, not bad.
20:01:52OrionPKit runs on raspberry pi just fine
20:02:00OrionPKthe only issues it has are with the nimrod standard library
20:02:14VarriountOrionPK: Let me guess, Unicode?
20:02:33OrionPKmm, that was 1 issue
20:02:43OrionPKthere's issue with times, sockets, httpserver
20:02:58gradhaOrionPK: fork nimrod FTW
20:03:03OrionPKthe issue w/ times isn't an issue IN times per se though
20:03:14VarriountHas that pull request for async select been accepted yet?
20:03:59OrionPKno, dont think it will be.. I think select is going to eventually be moved into an events module
20:04:05OrionPKwhch does not yet exist
20:04:40Araqwell it breaks code
20:04:40VarriountBut which events will the event module cover?
20:04:55VarriountKeyboard events? Mouse Events? Filesystem events?
20:05:23Araqwhat libevent etc. provide. simple.
20:07:10OrionPKevents for file descriptors
20:07:29MFlamerEXetoC: yes
20:07:41EXetoCgreat
20:07:43VarriountOrionPK: The problem with that is that what is considered a "file descripter" varies from OS to OS
20:12:12MFlamerEXetoC: But, what I'm working on does not use unions. It will be a variant ref type. There will be an indirection involved. This is how Haskell ADT's are done afaik
20:12:15*Varriount quit (Ping timeout: 250 seconds)
20:14:04MFlamerand actually, I believe this is how rust enums are structured also
20:29:39Araqbtw gradha 'return' is aware of "finally" and we have some unit tests for it
20:30:06Araqperhaps it's the "free standing" finally that's the issue here?
20:31:05gradhaI did modify the lone finally into a normal try:finally: block and had the same behaviour
20:31:46gradhamaybe it's that I'm returning from inside the exception handler rather than "normal" code body?
20:33:29gradhanope, return inside the inner try block doesn't trigger outside finally
20:35:27gradhayes, removing the nesting from http://pastebin.com/y2TBuNGZ makes the example work as intended
20:35:51*ics quit (Ping timeout: 246 seconds)
20:36:33Araqah so it's the nesting
20:37:14Araqcode generation for "try" surely is much harder than I had imagined
20:37:35*ics joined #nimrod
20:40:48*OrionPKM joined #nimrod
20:52:49*Varriount joined #nimrod
20:53:24VarriountHm, Does nimrod have a mascot?
20:53:38gradhait has horns
20:54:02VarriountAnd.. what else?
20:54:24gradhait sparkles
20:54:50gradhaas if it came from the Twillight movies
20:56:12Varriountgradha: is it a honey badger?
20:56:27Araqits symbol is the crown
20:57:04gradhathe crowned honey badger
20:57:40Araqwhy a honey badger?
20:58:01gradhaI like Varriount's suggestion
20:58:30gradhaeven the wikipedia article has a menacing picture, looking at you, poor programmer
20:58:39gradhaoh wait, we hate wikipedia, sorry
20:58:45VarriountAraq: A Honey Badger is known for its determination, elegance, and deadly efficiency.
21:01:50*CarpNet joined #nimrod
21:02:28VarriountHello CarpNet
21:02:44CarpNetevening/morning/afternoon
21:08:19gradha"[about honey badger] They kill and eat snakes, even highly venomous or large ones such as cobras."
21:08:31gradhano wonder I'm replacing all my python scripts with nimrod
21:08:39Varriount:P
21:11:50gradhanimrod memes http://www.youtube.com/watch?v=4r7wHMg5Yjg
21:22:33*MFlamer quit (Ping timeout: 252 seconds)
21:22:41Araq"honey badger is badass and doesn't give shit"
21:22:50Araqhell ya, you convinced me
21:23:01AraqNimrod is definitely a honey badger
21:23:13gradhaa crowned honey bodger motherfucker
21:25:50Araqyeah I'll ask filwit for a drawing
21:26:41gradhaa honey badger munching on a cobra, ideal for a book cover
21:26:52*Araq heard honey badger also eat gophers
21:28:24Araqso gradha ... how many youtube videos did you have to see to come up with this idea?
21:29:35gradhaI don't count count them, that would be depressing, like counting shots of alcohol
21:29:56gradhathe video was referenced from the honey badger "know your meme" page
21:30:05gradhathat's more accurate than wikipedia
21:30:13gradhaand more relevant too
21:30:30gradhahttp://knowyourmeme.com/memes/honey-badger
21:31:26gradhaalso, the idea was Varriount's, I just have good taste
21:32:25*Varriount quit (Ping timeout: 250 seconds)
21:32:31Araqoh yeah sorry Varriount. You'll get all the fame.
21:32:42Araqjust read the history
21:32:57Araq... and he left
21:33:19gradhalet's not tell him he gets the fame and us the money
21:34:11EXetoCDoes that include me?
21:34:44gradhaonly if you are part of the "blackjack and hookers" group
21:36:34BitPuffindom96: do you know what to do when using httpclient and you get unhandled exception: SSL support is not available. Cannot connect over SSL.
21:37:02Araq-d:useSSL
21:37:07Araqor something like that
21:37:47AraqBitPuffin: I like to work on your blocking bug but I'm tired
21:37:59Araqso ... how do we proceed here?
21:38:12BitPuffinAraq: better if you sleep probably :)!
21:38:19BitPuffin-d:useSSL doesn't seem to do anything
21:38:30gradhamaybe you need some openssl dlls
21:38:46BitPuffinfairly sure I have them
21:38:56Araq## SSL is supported through the OpenSSL library. This support can be activated
21:38:58Araq## by compiling with the ``-d:ssl`` switch. When an SSL socket is used it will
21:38:59Araq## raise ESSL exceptions when SSL errors occur.
21:39:07Araqrtfm sometimes helps
21:39:20BitPuffinit does
21:39:23BitPuffinI was just about to do that
21:39:25BitPuffindas
21:39:31BitPuffinlike you guys say in germany
21:39:43Araqlol
21:40:03Araqso you know our articles. impressive
21:40:08BitPuffinthanks
21:40:11BitPuffinit helped :P
21:40:33BitPuffindon't tell me that's the reason I've been having trouble for so long getting persona working
21:40:37BitPuffinI'll smash someone
21:40:49*Jackneill quit (Remote host closed the connection)
21:41:18*MFlamer joined #nimrod
21:43:24*Associat0r quit (Quit: Associat0r)
21:43:30BitPuffinyeah it seems so
21:46:54Araqsmash me then, I can handle it
21:47:16*BitPuffin smashes Araq
21:47:20BitPuffinbecause it was that
21:47:25gradha"Honey Badger Araq doesn't care"
21:47:41BitPuffinhahaha
21:47:50*OrionPKM quit (Remote host closed the connection)
21:48:48BitPuffinAraq: no but thanks for the help
21:49:12BitPuffindom96 is the one I should smash
21:49:25BitPuffinbecause jester says bad gateway instead of telling me the damn error :P
21:49:32*OrionPKM joined #nimrod
21:52:28EXetoCdom96: why u no give him proper error message? :/
21:53:14gradhamaybe that error is the "try:catch" around some core functionality and gets lost, dom96 used to say he's proud about that crash-catching thing
21:53:42BitPuffindom96: seriously man, not cool
21:53:45BitPuffinyou don't do that to people
21:53:50BitPuffinxD
21:56:34EXetoCnow put that bucket on your head and stand in the corner
21:57:14BitPuffinand NEVER COME BACK!!!
21:57:43BitPuffincan I add -d:ssl with a pragma
21:57:47*BitPuffin goes to rtfm
21:59:03gradhayou can put it into your nimrod.cfg file
21:59:42gradhaif you have the Aporia source code check out aporia.nimrod.cfg for an example
22:06:00BitPuffinfixed
22:06:12BitPuffinI thought it was possible to make it a dotfile
22:19:12BitPuffinlet response = httpclient.post(personaVerifier, "Content-Type: application/json", body=($data))
22:19:22BitPuffin415 Unsupported Media Type
22:19:23BitPuffin{"status":"failure","reason":"Content-Type expected to be one of: application/x-www-form-urlencoded, application/json"}
22:19:25BitPuffinwtf
22:21:01EXetoCI think there was a bug like that. was it fixed?
22:25:05EXetoChttps://github.com/dom96/jester/commit/1a66a533787d7a701f7accc563a67d24d011736e ?
22:26:30BitPuffinEXetoC: this is not related to jester
22:26:33BitPuffinthis is httpclient
22:26:43gradhastupid python rst2html.py command returns zero on errors, seriously, do they have a brain?
22:27:19Araq"nimrod rst2html" works great :P
22:27:42gradhaAraq: maybe, it was "eating" parsing errors like a honey badger and I wasn't noticing
22:28:19Araqwell ... fair enough
22:28:36Araqdunno if that should be a bug report then
22:28:52BitPuffinAraq: any idea why headers in httpclient seem to be completely ignored
22:29:37BitPuffinif headers: return
22:29:37gradhaAraq: if you are interested in replicating also error output/behaviour I can open some issues with test cases
22:30:00gradharight now I'm just adding a "check_docs" to my nakefile to run the python version and validate the nimrod one
22:30:03EXetoCBitPuffin: oh yeah, it says httpclient there ^
22:30:37EXetoClook, a qualified symbol! awesome
22:31:52BitPuffinEXetoC: o.O
22:31:58BitPuffinwhatchu on about
22:32:28Araqgradha: open a single bug report please
22:32:43Araqand gather RST related stuff there
22:33:07Araqhowever, often I deliberated made nimrod parse a superset as RST is stupid in some ways
22:34:04gradhayes, I don't like rst either, but I wonder if there's anything else, so far all these text syntax formats break when you try to do complex stuff
22:34:25gradhathe only one which didn't break on me was asciidoc, but I didn't test it with complex input
22:34:26EXetoCBitPuffin: qualified as in prefixed with the module name
22:34:54BitPuffinEXetoC: ah you didn't notice?
22:35:15BitPuffinseriously wtf
22:35:17BitPuffinkoch
22:35:22BitPuffinthis does not want to cooperate
22:35:27*BitPuffin angry
22:35:29*BitPuffin smash
22:36:03EXetoCBitPuffin green
22:36:16*BitPuffin repair
22:36:19*BitPuffin destroy
22:36:25*BitPuffin eat
22:36:35EXetoCBitPuffin: nah, can't be bothered with reading every word
22:36:40gradhaAraq: in fact, does nimrod's rst parser give any input syntax errors?
22:37:13Araqit does
22:37:39Araqin fact the forum routinely gives me errors about missing closing *
22:37:47BitPuffinEXetoC: newb
22:39:17EXetoCI disagree
22:39:17BitPuffinall that's keeping me from destroying earth is blotted science
22:40:22gradhaI've heard good things about pandoc, but it looked annoying when I read some examples
22:42:29AraqI write everything with nimrod's rst2html now
22:42:44BitPuffinlogic = nil
22:43:04AraqI never check wether python's parser agrees it's RST
22:43:29gradhaI didn't bother either, until I saw one of my .rst files rendered on github
22:43:46Araqgithub uses markdown though
22:44:01gradhaonly if you use the proper extension
22:44:02AraqI don't think they embedded python's docutils
22:44:17Araqgithub is a rails app after all
22:44:25BitPuffinmaybe it's not even got something to do with fucking headers anyway
22:45:08gradhamaybe their ruby rst implementation is broken, but so far the only problems were for stuff the python version also reports as mistakes
22:45:33gradhaI'll check again when I upload a "presumably corrected" version
22:46:28BitPuffinit seems to be
22:46:30BitPuffinholy balls
22:46:40EXetoClol balls
22:47:19BitPuffinhar har
22:47:41BitPuffinthe worst thing is that httpclient.nim looks normal
22:47:45BitPuffinat least to my eyes
22:48:51BitPuffin | Extra headers can be specified and must be separated by ``\c\L``.
22:48:53BitPuffinwell balls
22:49:52BitPuffinyeah that was literally the problem
22:51:05BitPuffinwtf is \c\L even
22:51:54OrionPKMcarriage return and newline
22:51:58EXetoCBitPuffin: repr it, biatch
22:52:20BitPuffinEXetoC: repr?
22:52:22EXetoCsorry, I've been watching too much BB
22:52:30EXetoCBitPuffin: echo "\c\L".repr
22:52:36EXetoCgood stuffs
22:53:22BitPuffinEXetoC: what does thats does
22:54:37EXetoCrepr stringifies arbitrary structures
22:58:18BitPuffinalright
22:58:30BitPuffinmakes sense that "okay" == "okay" apparently fails but whatever
22:59:12EXetoC?
22:59:38BitPuffinecho(verificationData["status"])
22:59:40BitPuffinif $verificationData["status"] == "okay":
22:59:42BitPuffinoutputs okay
22:59:48BitPuffinbut doesn't evaluate to true
22:59:51BitPuffinhalelujah
23:01:11BitPuffinyou can't make this shit up
23:02:17BitPuffinecho(verificationData["status"])
23:02:19BitPuffin echo($verificationData["status"] == "okay")
23:02:23BitPuffin(not actual indentation)
23:02:31BitPuffin"okay"
23:02:33BitPuffinfalse
23:02:48BitPuffinis this some kind of utf thing
23:03:12EXetoCrepr it, or surround it with something, to reveal ctrl chars
23:04:07BitPuffinEXetoC: you are a clever guy
23:04:36EXetoCactually, only the former is reliable
23:05:09BitPuffin|ref 0x7f126d481150 --> [JStringstr = 0x7f126d49db90"okay"]
23:05:11BitPuffin|
23:05:19BitPuffinlol wtf
23:05:44BitPuffin| is the control char
23:05:46BitPuffins
23:05:55*CarpNet quit (Quit: Leaving)
23:06:02gradhadon't you need something like json_thingy.str_val?
23:06:49BitPuffinoh come on
23:06:59gradhatry 'verificationData["status"].str == "okay"'
23:07:05BitPuffinway to be consistent with $ in that case
23:07:20gradhait's a hunch, don't trust me yet
23:07:32BitPuffinI did say in that case
23:07:48BitPuffinyeah lol that worked
23:07:54BitPuffinhonestly I'm gonna smash something
23:08:02BitPuffinbut thanks gradha
23:08:08gradhawell, you can blame Araq for comparing a JStringstr with a string and the compiler not complaining
23:08:53Araqnope. $ makes it a string
23:09:00Araqso he compares strings with strings
23:09:10Araqpoor compiler can't see the bug this way
23:09:19BitPuffinAraq: but why would you ever want both
23:09:21EXetoCjstringstr wot
23:09:29gradhamaybe BitPuffin drank too much tonight as his earlier tests failed
23:09:48BitPuffintwo jstringballs converted into the nimrod repr should be the same
23:09:52BitPuffinso why even have the .str
23:10:19BitPuffinif anything you should only provide a toJStringstr
23:11:44AraqBitPuffin: I'm considering your remarks
23:12:12BitPuffinAraq: cool :D
23:12:14Araqa bug is always a serious reason to change something
23:12:25BitPuffinyeah it's a real gotcha I think
23:12:38BitPuffinin nimrod you come to expect $ to be THE way to get a string
23:12:41BitPuffinnot .str
23:13:05Araqnote that "bug" refers to "happend in reality". as opposed to "I have the feeling that somebody might be confused some day about this"
23:13:26gradhaBitPuffin: remember, you are fighting the honey badger
23:13:30BitPuffinyeah but in this case we have both
23:14:02BitPuffinI have a feeling that I won't be the only one getting confused by this
23:14:03BitPuffin:P
23:16:28gradhaTime processing rst files with nimrod: 0.155s. Time processing rst files with python-docutils: 3.155s.
23:16:44BitPuffinlol
23:16:50BitPuffinnimrod is epic :D
23:17:11EXetoCyeah beating python and everything, holy moly
23:17:26BitPuffinyeah holy shit :D
23:17:30BitPuffinlol :D
23:17:52Araqpython-docutils will be optimized "later" after they got it right ...
23:18:09gradhaI started to suspect python is retarded some years ago, but now there's too much solid evidence
23:18:53*Araq wonders if that's another way to say "fu" to your users
23:19:15BitPuffinAraq: looking for inspiration?
23:19:21BitPuffinkidding :P
23:20:57Araq"we made it correct first so the software can deal even with Unicode Klingon characters."
23:21:38Araq"Later we will make it usable for the people on older hardware."
23:22:31EXetoCgradha: it is after all a dynamic language, and most people can live with the overhead, but it sucks in other ways
23:23:10EXetoCas do most "dynamic" languages I assume. haven't used too many
23:23:32gradhaI once spent a morning trying to explain a ruby programmer why converting a unix timestamp to a string was a bad idea for time comparisons in terms of performance
23:23:53gradhaplus the stringified version failed for some date ranges because it wasn't doing something right anyway
23:24:55BitPuffintime to eat dinner
23:25:00BitPuffinat 00:25
23:25:21gradhahoney or cobras?
23:25:58gradhahow many hours of sunlight you get in Sweeden in this time of the year?
23:26:16Araqgradha: well? what did the ruby guy say?
23:26:56gradhaAraq: she just wasn't aware that timestamps were integers and string conversion took so long
23:27:42EXetoCgradha: roughly 6.8666666666666667 according to some website
23:28:09gradhaAraq: it all happened while debugging a client/server request problem, expected output vs final output
23:28:54gradhaEXetoC: I think we might be getting about 8 here in Spain, or so it looks like from my window
23:30:21gradhaAraq: the thing is, it made me realize how many programmers don't even care to give a fuck about performance, and I wept
23:30:48EXetoCyeah it blows
23:30:53BitPuffinAraq: have you talked to zahary about the bug yet? Since it was in his code
23:31:21BitPuffinI dunno guys
23:31:25BitPuffinperformance isn't always important
23:31:44BitPuffinnow don't get me wrong
23:31:56BitPuffinI like me some performance, it's just not always a critical thing
23:34:32gradhayeah, performance is not critical, imagine how many programmers thing about security…
23:34:59BitPuffinthat's another story
23:35:10BitPuffinsecurity really needs to be a higher priority
23:35:12BitPuffinI mean again
23:35:21BitPuffinnot always critical, but more critical than what people treat it
23:35:57gradhafrom what I've seen security hasn't even popped in the radar of the few people I know care about performance
23:37:57EXetoCit's a relative term, so performance is always important in that sense, right? but of course it's not necessary to optimize in many cases
23:43:34AraqEXetoC: true but speed is also a feature
23:44:54Araqand speed enables features. think about on-the-fly compilation so that your IDE marks errors
23:45:28Araqit's a really nice feature if it works smoothly
23:45:54EXetoCright
23:52:11gradhaat the moment I only have https://github.com/Araq/Nimrod/issues/689 but if I find any more I'll append them there
23:53:07Araqalright