<< 13-01-2015 >>

00:02:46fowlakiradeveloper, did you try naming a task "namespace1::mytask"? i bet it works
00:05:26EXetoCmaybe have a namespace convention, unless for some reason actual semantics are needed
00:06:49ldleworkDoes anyone know where the Nimbot repo is?
00:08:04flaviuldlework: https://github.com/nim-lang/nimbot
00:08:09fowla rake task is also an object or a task, should nake be object oriented just because rake is?
00:09:57*z1y quit (Ping timeout: 264 seconds)
00:15:00*sillesta joined #nim
00:22:58akiradeveloperfowl: really? I've just commented without a careful look at the code. sorry if I mistake and thanks for the information
00:24:59ekarlso-flaviu: i'll put it up on my vps tmrw with working login stuff and so on
00:25:16ekarlso-flaviu: ut really I should fix somekind of token mechanism for login (preferably JWT)
00:29:56akiradeveloperfowl: I see what you mean and yes. it definitely work but what if you have many tasks in the namespace. Do you repeat adding namespace prefix to the task names? This is what I meant http://www2s.biglobe.ne.jp/~idesaku/sss/tech/rake/#namespace
00:31:23*leavengood quit (Ping timeout: 240 seconds)
00:35:44fowlakiradeveloper, there is no namespace in nake but if you want to name your tasks a:b and a:c then just do that
00:36:01def-akiradeveloper: or you can add a template or macro to do that automatically
00:38:02fowlidgi
00:40:50EXetoCdef-: might be overkill, but yeah
00:41:53akiradevelopernesting namespaces will be very difficult, I think
00:42:21akiradeveloperso, reasonable to keep the current implementation
00:43:27EXetoCnot too difficult with a macro
00:43:30renesacAraq: you were going to re-generate the docs?
00:43:35EXetoCdo build scripts often get that complex?
00:43:40renesacI just made a small pull request: https://github.com/Araq/Nim/pull/1945
00:45:42renesacmy english is correct for the winlean description?
00:46:16flaviurenesac: looks good to me
00:46:54*johnsoft quit (Ping timeout: 245 seconds)
00:47:51*johnsoft joined #nim
00:51:11*HakanD quit (Quit: Be back later ...)
01:08:15Araqrenesac: thanks. sorry will rebuild docs tomorrow, good night
01:10:31renesacnp
01:10:41renesacit would be more troublesome if you already did it
01:10:43renesacgood night
01:26:48flaviuHas anyone made a perfect hash table?
01:27:06flaviuPreferably usable with const.
01:29:38*ARCADIVS joined #nim
01:44:07*sillesta quit (Ping timeout: 265 seconds)
01:49:27renesacand I didn't focused on the timers library...
01:49:39renesacbut I did crash the compiler while writting a ugly hack!
01:49:43renesacEXetoC: https://gist.github.com/ReneSac/d2304b60c1999ebddb0c
01:50:49flaviurenesac: It's a bug, report it.
01:51:43*HakanD joined #nim
01:54:26*eaplmx joined #nim
01:57:07*HakanD quit (Ping timeout: 255 seconds)
02:02:21*eaplmx quit (Quit: Page closed)
02:02:59*zahary1 quit (Ping timeout: 244 seconds)
02:06:34*VinceAddons quit (Read error: Connection reset by peer)
02:13:43*JStoker quit (Read error: Connection reset by peer)
02:18:12*z1y joined #nim
02:25:59*JStoker joined #nim
02:34:56*bjz joined #nim
02:36:04*akiradeveloper quit (Quit: Page closed)
02:39:02*bjz quit (Ping timeout: 245 seconds)
02:54:08*stapler joined #nim
02:54:08*stapler quit (Changing host)
02:54:08*stapler joined #nim
02:54:12*stapler left #nim (#nim)
02:54:55*kapil__ joined #nim
02:54:58*Amrykid2 joined #nim
03:00:02*nimnoob joined #nim
03:02:43*BitPuffin quit (Ping timeout: 244 seconds)
03:09:58*dashed joined #nim
03:11:55*Amrykid3 joined #nim
03:13:53*darkf joined #nim
03:14:33*jefus_ joined #nim
03:14:59*Amrykid2 quit (Ping timeout: 265 seconds)
03:17:08*Amrykid3 is now known as Amrykid2
03:18:57*jefus quit (Ping timeout: 264 seconds)
03:19:08*Amrykid2 quit (Quit: Leaving)
03:33:54*adam_s joined #nim
03:41:08*HakanD joined #nim
03:41:28*z1y quit (Ping timeout: 244 seconds)
03:44:03*z1y joined #nim
03:45:17*HakanD quit (Ping timeout: 244 seconds)
03:57:57*nimnoob quit (Ping timeout: 264 seconds)
04:20:23*brson quit (Ping timeout: 240 seconds)
04:23:44*nimnoob joined #nim
04:28:07*nimnoob quit (Ping timeout: 256 seconds)
04:28:53*johnsoft quit (Ping timeout: 240 seconds)
04:42:09*johnsoft joined #nim
04:48:39*dts|pokeball joined #nim
04:50:52*dtscode quit (Quit: ZNC - http://znc.in)
05:03:22*z1y quit (Remote host closed the connection)
05:03:59*z1y joined #nim
05:10:53*darkf quit (Quit: Leaving)
05:11:16*darkf joined #nim
05:18:14*z1y quit (Ping timeout: 265 seconds)
05:29:49*vendethiel quit (Ping timeout: 245 seconds)
05:29:49*HakanD joined #nim
05:31:38dts|pokeballjust an fyi, nimble doesnt appear to build on ubuntu anymore with the latest nim compiler
05:33:53*HakanD quit (Ping timeout: 240 seconds)
05:36:14*brson joined #nim
05:36:32*vendethiel joined #nim
05:45:49*dashed quit (Quit: Connection closed for inactivity)
05:46:59*z1y joined #nim
05:52:17dts|pokeballfixed it. Araq can you give me the proper permissions so i can push the fixes to nim?
05:58:57*BitPuffin joined #nim
06:00:55*gsingh93 quit (Quit: Connection closed for inactivity)
06:03:17*BitPuffin quit (Ping timeout: 252 seconds)
06:25:17*nimnoob joined #nim
06:29:45*nimnoob quit (Ping timeout: 264 seconds)
06:30:31*reactormonk joined #nim
06:30:37*HakanD joined #nim
06:32:39reactormonkI have a pointer in C code that I include via {.compile.}. The pointer points to a character in a string. How can I convert that pointer to the index in the string? I know how to do it in C via pointer arithmetic, what's the clean way to do it in nim?
06:34:45*HakanD quit (Ping timeout: 244 seconds)
06:37:39*z1y quit (Ping timeout: 244 seconds)
06:40:49*z1y joined #nim
06:41:20*BlaXpirit joined #nim
06:45:27*z1y quit (Client Quit)
06:48:11*brson quit (Quit: leaving)
06:56:25*z1y joined #nim
06:56:46*HakanD joined #nim
07:04:27reactormonkhow do you call the two range variables, since "end" is taken?
07:05:15wtwAraq: I'm _a_ BSD guy but not the one from github ;)
07:05:34reactormonkwtw, any idea how to fix parallel build?
07:05:54wtwstrangely, for me the build work parallely in the end
07:06:10wtwbut I'll have a look as to why
07:06:11reactormonkhm
07:06:27*Demon_Fox joined #nim
07:10:48*HakanD quit (Quit: Be back later ...)
07:18:40*gokr_ quit (Ping timeout: 264 seconds)
07:25:08*HakanD joined #nim
07:25:16*VinceAddons joined #nim
07:26:16HakanDspam on the forums again.
07:45:25*gour joined #nim
08:06:57*zahary quit (Read error: Connection reset by peer)
08:09:21reactormonkError: 'Slice' is not a concrete type. :-(
08:11:50*adam_s quit (Quit: Leaving)
08:26:56*nimnoob joined #nim
08:31:37*nimnoob quit (Ping timeout: 264 seconds)
08:40:30*brson joined #nim
08:40:40*brson quit (Client Quit)
08:42:49*judofyr quit (Ping timeout: 246 seconds)
08:49:31*Trustable joined #nim
09:18:36*Sphax joined #nim
10:09:24*MajorTennis joined #nim
10:10:11*MajorTennis quit (Changing host)
10:10:11*MajorTennis joined #nim
10:14:15*z1y quit (Quit: Leaving.)
10:15:39*z1y joined #nim
10:18:28*akira__ joined #nim
10:18:58*akira__ quit (Client Quit)
10:28:30*nimnoob joined #nim
10:32:49*nimnoob quit (Ping timeout: 255 seconds)
10:33:45*keyle quit (Quit: leaving)
10:34:32*keyle joined #nim
10:37:00*VinceAddons quit (Read error: Connection reset by peer)
10:56:24*Demon_Fox quit (Quit: Leaving)
11:01:20keylehi
11:04:11MajorTennishi
11:05:21keyleanyone knows what's the deal with this? http://irclogs.nim-lang.org/packages
11:05:51keyleit's linked as a script of lib.html
11:07:01BlaXpiritD:
11:08:02BlaXpiritkeyle, i suspect Unofficial packages is loaded dynamically or something
11:08:35keyle<script type="text/javascript" src="">http://irclogs.nim-lang.org/packages?callback=gotPackageList"></script>
11:08:40keyleyeah but that's no text/javascript
11:08:50BlaXpiritkeyle, but it is
11:08:53BlaXpiritit's like JSONP
11:09:02keyleI see
11:09:06BlaXpiritit's just a function call with an object of data
11:09:23BlaXpiritmy suspicion is correct if u look at the other script
11:10:28keylethanks
11:14:13BlaXpiritwait, it's not "like" JSONP, it's exactly JSONP
11:16:54keylewhat threw me off is the fact that the call is not made once the page is loaded, in javascript
11:17:13*matkuki joined #nim
11:17:28*JinShil joined #nim
11:17:48*gour_ joined #nim
11:20:58*gour quit (Ping timeout: 255 seconds)
11:33:29ekarlso-uh: lib/pure/net.nim(1039, 66) Error: type mismatch: got (int) but expected 'uint16'
11:38:26*HakanD quit (Quit: Be back later ...)
11:42:06keyle:/
11:42:49*ekarlso- guesses some fun changes has landed recently
11:43:00Araqthis is caused by skyfex_'s patch, I think
11:44:45ekarlso-Araq: any quick fix ?
11:45:12*gour_ is now known as gour
11:46:15Araqekarlso-: working on it
11:46:33*HakanD joined #nim
11:46:33*z1y quit (Ping timeout: 264 seconds)
12:04:31*Sphax quit (Quit: ZZZZZzzzzz)
12:05:01*Sphax joined #nim
12:06:17keyleI'm installing nimble from release pre-built and followed the steps and used install.bat - and I get this? http://hastebin.com/juwomamepi.tex
12:07:32Araqyes, we use openssl for https support.
12:07:48Araqit's good that security is much more important than a working painless system.
12:08:26ekarlso-ping me when u got it Araq :)
12:08:33ekarlso-atm packages isn't compiling
12:08:48Araqif I want a working painless system I wouldn't use a computer in the first place, right?
12:10:29*BitPuffin joined #nim
12:10:54dom96keyle: The installer should have installed the DLLs.
12:11:03dom96Did you compile using a 64bit compiler?
12:12:00keyledom96: went here https://github.com/nim-lang/nimble#windows followed the steps, got 0.6 zip https://github.com/nim-lang/nimble/releases
12:12:08keyleused install.bat
12:12:36dom96Execute nim -v
12:12:54keyleNim Compiler Version 0.10.2 (2014-12-30) [Windows: amd64]
12:13:37keyleI have updated httpclient though, as it was broken for urls with ?stuff=stuff
12:13:55dom96You're using a 64bit compiler.
12:14:11keyleheh
12:14:14dom96You downloaded a 32bit version of Nimble.
12:15:06keyleI apologize, but the download page of Nim does provide a 64bit which I picked in favor to 32 since I don't live in 2005
12:15:15keyleHowever here there is only 32 bits https://github.com/nim-lang/nimble/releases
12:15:18ekarlso-whaa, http client doesn't support url params ?
12:15:30keyleekarlso-: it does, it was broken
12:15:37*BitPuffin quit (Ping timeout: 256 seconds)
12:15:51keyledom96: thanks anyway :/
12:16:20ekarlso- ah ok
12:16:20keylehow do I uninstall nimble? :D
12:16:33dom96keyle: indeed. You can get 64bit DLLs of openssl and it will work then
12:17:14keyledom96: for future releases it might be a good idea to ship both 64 & 32bits of nimble along side of the nim compiler
12:17:46dom96keyle: Are you volunteering to build those for me? :P
12:17:59keylesure, if you give me notice
12:18:21*matkuki quit (Ping timeout: 264 seconds)
12:18:25dom96keyle: Would be awesome if you could build a 64bit version of 0.6
12:18:40dom96and packaged it like I packaged the 32bit version
12:18:45keylehm on second thought, there is a reason why I'm using the nim release version
12:19:01keyleI don't have all the gnu compiler stuff :(
12:19:18keyleso that's not possible atm
12:19:34keylemingw sorry
12:20:07ekarlso-keyle: u develop on windows ? :p
12:20:09ekarlso-poor soul :D
12:20:59keyleI develop on whatever I get paid 6 figures for
12:21:11keyleif tomorrow it's knoppix, fine
12:21:56keyledom96: will get mingw
12:23:53keyledo I trust win-builds.org?
12:25:06dom96But if you have a 64bit nim compiler then you should already have a 64bit mingw?
12:26:24keyleI'm not sure
12:27:07keylethe only platform I can get nim compiled from devel is my debian box, that's a piece of cake
12:27:29*z1y joined #nim
12:29:43*nimnoob joined #nim
12:30:00keylecygwin can do it ?
12:34:15*nimnoob quit (Ping timeout: 264 seconds)
12:36:16dom96probably not
12:44:30ekarlso-Araq: hard thing the net stuff or ?
12:46:17*jnye joined #nim
12:46:44keyledom96: indeed :)
12:48:30renesacdts|pokeball: make your fork of nim, push your changes and make a pull request
12:51:22keyledom96: so yes, once you've installed a nim from installer, you get mingw dist
12:51:27keyle(to my surprise)
12:51:34keyleso then, you can compile devel :)
12:51:48keyleneato.
12:51:59dom96indeed
12:52:10keyleNim Compiler Version 0.10.3 (2015-01-13) [Windows: amd64]
12:57:45Araqekarlso-: had to pick the workaround, it's not immediately obvious why skyfex_'s patch is wrong
12:57:51Araqbut I pushed it
13:00:59*Sphax quit (Read error: Connection reset by peer)
13:01:37*Sphax joined #nim
13:05:31Araqbbl
13:18:12*ARCADIVS quit (Quit: ARCADIVS)
13:19:52*jefus_ is now known as jefus
13:26:15*BitPuffin joined #nim
13:26:52*HakanD quit (Quit: Be back later ...)
13:27:44*minciue left #nim (#nim)
13:28:24keyleyay got gtk2 tests running
13:28:37keyleI mean examples
13:29:49*z1y quit (Remote host closed the connection)
13:30:17*z1y joined #nim
13:30:59*nimnoob joined #nim
13:31:11*BitPuffin quit (Ping timeout: 244 seconds)
13:32:09*HakanD joined #nim
13:35:49*nimnoob quit (Ping timeout: 264 seconds)
13:37:19*flan3002 quit (Ping timeout: 245 seconds)
13:42:25*keyle quit (Quit: Morbo: Chitchat achieved!)
13:46:21*nimnoob joined #nim
13:46:29*flan3002 joined #nim
13:47:49*KoFish joined #nim
13:48:51KoFishHi, just curious, is there any project to build a tool suit for nim?
13:49:09KoFish(I'm thinking similarly to golang)
13:50:08ekarlso-KoFish: tool suit how ?
13:50:50KoFishekarlso-: formatting, documentation, testing, build environment (if that is required)
13:50:53KoFishand such
13:52:15KoFishit's just a thought I had. Thinking of switching back to nim from golang now that I've tried go a bit and those kind of tools is probably what i will be missing the most
13:52:45*nimnoob quit (Remote host closed the connection)
13:55:41EXetoChttps://github.com/fowlmouth/nake
13:56:14EXetoCyou can have compiler configs, but I don't think you can select a certain config at this point in time
13:57:10EXetoCbut you can just do "nim doc2" to generate the documentation for example
14:09:58*nimnoob joined #nim
14:10:36EXetoCI don't know how well compiler/nimfix/pretty.nim is supposed to work
14:14:22*gmpreussner joined #nim
14:14:52*jpoirier quit (Quit: Leaving)
14:16:35renesacKoFish: EXetoC nimfix should do it now... but I'm not sure how agressive it is
14:16:38renesacIt can also check that your identifiers adhere to the official style guide and optionally modify them to do so (via --styleCheck:auto).
14:16:50renesac<-- that should have been quoted ""
14:17:03renesachttp://nim-lang.org/nimfix.html
14:17:26KoFishah nice :) So basically everything exists
14:17:51renesacfor testing, there is the unloved unittest module
14:18:05renesacbut the compiler uses another testing framework
14:18:16KoFishso no quickcheck yet? :P
14:18:23renesacwith discard """ '""" for the expected results, etc
14:18:40renesacI guess not
14:19:07renesacno tool for quantify the test converage either
14:19:30*sillesta joined #nim
14:22:35*JinShil quit (Quit: Konversation terminated!)
14:24:43renesacKoFish: the unittest was to automatically generate test vectors, etc, but development stopped before it seems
14:24:51renesacunittest.nim
14:33:31ldleworkAraq: just a reminder to regen the docs
14:36:48*gmpreussner quit (Ping timeout: 244 seconds)
14:36:51*gmpreussner_ joined #nim
15:00:47*irrequietus joined #nim
15:03:19*atomic-hedgehog joined #nim
15:14:32*jefus_ joined #nim
15:14:58*BitPuffin joined #nim
15:15:02*gmpreussner_ quit (Ping timeout: 244 seconds)
15:15:59ekarlso-is there any utility method or so to generate query parameter strings in nim ?
15:16:12ekarlso-like feed it a stringtable or smth and you get the query string
15:16:34Araqekarlso-: I don't think so but I do no web dev
15:16:51ekarlso-Araq: :D
15:17:03ekarlso-def-: ?:D
15:17:41*z1y quit (Ping timeout: 252 seconds)
15:17:47*jefus quit (Ping timeout: 245 seconds)
15:18:20ekarlso-Araq: can I do a .map on a stringtable btw?
15:19:29*BitPuffin quit (Ping timeout: 244 seconds)
15:20:02AraqmapIt works on everything that has items. but a stringtable only has pairs iirc
15:20:37Araqwhat should .map on a stringtable do?
15:21:02*VinceAddons joined #nim
15:23:42EXetoCtry pairs if items fails?
15:24:45EXetoCI mean, if items doesn't exist
15:31:18*saml quit (Remote host closed the connection)
15:33:19*saml joined #nim
15:34:33*nimnoob quit (Ping timeout: 252 seconds)
15:38:12*atomic-hedgehog quit (Ping timeout: 245 seconds)
15:39:57*atomic-hedgehog joined #nim
15:46:07*atomic-hedgehog quit (Ping timeout: 245 seconds)
15:47:01*atomic-hedgehog joined #nim
15:51:48gokrAraq: In Smalltalk - if you do map (collect:) on a table (Dictionary) - then you get a new Dictionary with the values transformed.
15:52:54Araqand the keys untouched? ok.
15:52:59gokryeah.
15:53:07*leavengood joined #nim
15:53:31*leavengood is now known as Guest81214
15:53:44gokrFurther, in Dictionary you have a class for the pair (called Association) and you can call a Dictionary to get its associations (you then would get a seq of pairs back in Nim).
15:54:02gokrDo we also have an "Assocation" type - or is that simply a tuple?
15:54:11gokrHaven't played with tables much yet.
15:59:27*darkf quit (Quit: Leaving)
16:01:37*kapil__ quit (Quit: Connection closed for inactivity)
16:07:51EXetoCyes, tuple
16:08:16EXetoCand {a: b, c: d} is transformed into [(a, b), (c, d)]
16:14:45ekarlso-can't u do toSeq(stringtable) ? :D
16:15:31EXetoCI don't think you can atm
16:15:39*jnye quit (Quit: jnye)
16:15:57EXetoCbecause of what has been said regarding items and pairs
16:16:19ekarlso-ye
16:17:00*Sphax quit (Quit: ZZZZZzzzzz)
16:18:39*BitPuffin joined #nim
16:19:13EXetoC'compiles' to the rescue maybe
16:19:34ekarlso-compiles ? ^
16:20:07EXetoCcompiles(stmt)
16:20:08Araqfyi 'compiles' will turn into something saner :P
16:20:20EXetoCI wonder if it can be made transparently with traits
16:20:32ekarlso-does nim have traits a'la scala / rust ?
16:21:16Araqugh. pring skyfex_ renesac
16:21:20Araq*ping lol
16:22:53ekarlso-hmm, can a query string typically have multiple keys of the same value ? like name=foo&name=bar ?
16:23:32AraqI'm quite sure that's possible. the web standards are so bad it's not even funny anymore.
16:24:06EXetoCmaybe if "for x in y" would work for 'pairs' too, when 'items' is absent
16:24:35EXetoCwe need to redesign the web technologies :p
16:24:40AraqEXetoC: no. not *more* magic. the implict 'items' is already broken for template instantiation
16:24:40ekarlso-hmm
16:24:54ekarlso-maybe make querystring be a seq of tuples then or ? ^
16:25:41*Sphax joined #nim
16:25:55*HakanD quit (Quit: Be back later ...)
16:27:28EXetoCAraq: fair enough. maybe an interface on top of that then, but it might be best to wait until traits have been fixed
16:28:15*Puffin joined #nim
16:29:06Araqekarlso-: dom96 has the same problem with HTTP headers
16:29:28AraqI told him to use a dedicated data structure for it, but he has other plans
16:32:58*Puffin quit (Ping timeout: 265 seconds)
16:36:33*gokr quit (Quit: Leaving.)
16:46:21ekarlso-can I go from a stringtable to something that matches a openarray[tuple[k, v: string]?
16:48:11*gokr_ joined #nim
16:48:44*jpoirier joined #nim
16:49:15*gokr_ quit (Client Quit)
16:52:43*jefus_ is now known as jefus
16:55:08*adam_s joined #nim
16:56:02*BlaXpirit quit (Read error: Connection reset by peer)
16:56:46*BlaXpirit joined #nim
16:58:26*adam_s quit (Read error: Connection reset by peer)
17:00:00dts|pokeballrenesac, yeah... i was too tired to realize that last night
17:00:40*adam_s joined #nim
17:00:40*Varriount|Busy joined #nim
17:07:38*matkuki joined #nim
17:07:56*nimnoob joined #nim
17:09:25ekarlso-dom96: https://bpaste.net/show/cf9899773de9 < seen that before ?
17:12:50*nimnoob quit (Ping timeout: 244 seconds)
17:12:56*nimnoob joined #nim
17:30:21*gokr joined #nim
17:30:51*nimnoob quit (Remote host closed the connection)
17:31:30*jpoirier left #nim (#nim)
17:42:00*Sphax quit (Quit: ZZZZZzzzzz)
17:42:56*Ether-plays-4fun joined #nim
17:43:50Ether-plays-4funHi all. Any hints for "Error: redefinition of 'fileHandle' {.deprecated: [fileHandle: getFileHandle].}"
17:43:55Ether-plays-4fun?
17:44:13*MajorTennis quit (Quit: Leaving)
17:44:26BlaXpiritEther-plays-4fun, give code -_-
17:44:40Ether-plays-4funWhen compiling nimble.
17:44:47BlaXpiritoh...
17:44:51Ether-plays-4fund:\msys64\mingw64\lib\nim\system.nim(2445, 21) Error: redefinition of 'fileHandle'
17:45:10BlaXpiritwat
17:45:27Ether-plays-4funWhat part?
17:45:55*nimnoob joined #nim
17:46:47BlaXpiritI don't understand how this is possible, in system.nim
17:46:57*adam_s quit (Quit: Leaving)
17:47:48Ether-plays-4funHmm.
17:47:54Ether-plays-4funWhat's the importance of nimfix?
17:48:01dts|pokeballEther-plays-4fun, yeah... i was getting errors in the stdlib when compiling nimble last night as well
17:48:04Ether-plays-4funI see "when not defined(nimfix):" just before the line.
17:49:15Ether-plays-4funWhen I define nimfix, I get past the error (but get another one :D).
17:52:22Ether-plays-4fun// Be back later.
17:52:59EXetoC# cya
17:53:12BlaXpirit(* lel *)
17:54:59*Sphax joined #nim
18:00:42*Sphax quit (Quit: ZZZZZzzzzz)
18:03:23*Sphax joined #nim
18:04:06ekarlso-should using var resp = await client.get("http://foo.com") inside a jester app route cause SIGSERV illegal storage ?
18:04:35*Sphax quit (Client Quit)
18:05:31*nimnoob quit (Ping timeout: 255 seconds)
18:05:44EXetoCdoes the name 'resp' have anything to do with it? is client nil?
18:07:19ekarlso-ya, correct!
18:07:31ekarlso-*stupid
18:09:27EXetoCthe former or the latter?
18:09:56ekarlso-resp variable :)
18:11:53EXetoCthen there's no reason for it to segfault
18:13:38*enquora joined #nim
18:13:47ekarlso-:)
18:15:45EXetoCmaybe compile with -d:release and --stackTrace:on and then re-run
18:16:19EXetoCor just simply without -d:release but I think this is a good diagnostics/speed compromise
18:18:35*Matthias247 joined #nim
18:19:15EXetoCyou also have -d:quick though. maybe it's almost as fast
18:22:25*HakanD joined #nim
18:24:21EXetoCnevermind that last comment, and I was referring to the compilation of nim
18:27:39ekarlso-is there any code to parse a query string to something useful ? I'm guessing no but
18:30:56EXetoCit would be nice if you could try to output some diagnostics. you can also do "./koch temp" (with no -d:release) which will output bin/nim_temp
18:32:26*nimnoob joined #nim
18:32:35*HakanD_ joined #nim
18:35:05gokrHakanD_: Svensk?
18:35:46HakanD_: gokr nope from Turkey
18:35:58gokrAh! Hakan, right.
18:36:06gokrHÃ¥kan is a common swedish name
18:36:24HakanD_Hmm, didn't know that (:
18:37:01*HakanD quit (Ping timeout: 264 seconds)
18:37:15*HakanD_ is now known as HakanD
18:37:49gokrHakanD: http://en.wikipedia.org/wiki/H%C3%A5kan
18:38:49sillestagokr: svensk!
18:38:58gokrAh, kul!
18:39:04reactormonkHow do I encode string slices? Error: 'Slice' is not a concrete type.
18:39:47reactormonkI'm only interested in storing the slice data itself, not the actual string represented inside the slice.
18:42:00EXetoCx = y..z (proc `..`*[T](a, b: T): Slice[T]) ?
18:42:38*Sergio965 joined #nim
18:42:44reactormonkso store y and z separate in the object? I was hoping for object: position: Slice
18:43:46ldleworkWhat's the best thing for unit testing?
18:44:00reactormonkldlework, there's only unittest
18:44:18ldleworkk
18:44:22EXetoCthere is that, and then good old assert
18:46:15ekarlso-let data = s.split("&").map((s: string) => (s.split("="))).map((i: seq[string]) => (i[0], i[1])) < I love nim..
18:46:34ekarlso-gokr: :D
18:46:45reactormonkekarlso-, the scala version is shorter, but also slower ;-)
18:46:55ekarlso-:P
18:46:56ldleworkhmm why doesn't unit test show up here? http://nim-lang.org/lib.html
18:47:12ekarlso-well, if you could do something like in rust
18:47:21ekarlso-you could actually skip having to do multiple maps -,,-
18:47:43EXetoCreactormonk: I can't find fowl's slice lib thing. it's still just a huge blob of modules :p
18:48:14reactormonkEXetoC, you could look some more?
18:48:38ekarlso-s.split("&").map(|i| {let x = i.split("="); (i[0], i[1])}) < kinda
18:48:48ekarlso-would be nice :D
18:49:03EXetoCreactormonk: not now. I think it was him though. look around in nimlibs
18:49:13ldleworkguys
18:49:26reactormonkekarlso-, there's the do syntax...
18:49:33*paamish joined #nim
18:49:37reactormonkwhich doesn't make it shorter, really :-/
18:49:48ekarlso-:P
18:50:49ldleworkwhere is the documentation for unittest
18:51:08reactormonkGo look in the 4th dimension - somewhere in the future.
18:51:08ldleworkI mean I know it is here, http://nim-lang.org/unittest.html
18:51:24ldleworkbut why isn't it linked to from http://nim-lang.org/lib.html
18:51:40reactormonkHm. Someone probably forgot.
18:52:46ldleworknot that the unit test documentation is very useful..
18:52:50reactormonk^^
18:53:04reactormonkEXetoC, nimlibs?
18:55:01ekarlso-hmm
18:55:03ekarlso-can you do
18:55:08ekarlso-from x import Foo as Bar ?
18:55:19reactormonkI think so
18:55:47ekarlso-packages.nim(5, 69) Error: identifier expected, but found 'Response as ClientResponse'
18:56:00reactormonkapparently not
18:56:26ekarlso-hah, that kinda sucks then if 2 packages has the same thing :P
18:56:30*paamish quit (Quit: Page closed)
18:56:45reactormonknah, just gotta use full identifiers aka x.Foo
18:57:17AraqpackageA.Response, packageB.Response is possible. not for ldlework perhaps, but others manage to do that.
18:57:44Araqldlework: the unittest module is not officially supported because of bugs, so no docs.
18:58:08Araqofc that doesn't stop anybody from using it so we cannot remove it either ...
18:58:42reactormonkIs it possible to make non-concrete type outside the stdlib?
18:59:05ekarlso-lib/core/macros.nim(273, 38) Error: ambiguous identifier: 'Response' -- use a qualifier
18:59:07ekarlso-...
18:59:25Ether-plays-4funHi. How reliable is --lib parameter?
18:59:40ekarlso-so something is going bork
18:59:42reactormonkEther-plays-4fun, it should work as documented
18:59:48reactormonkekarlso-, looks like it
18:59:57ekarlso-Araq: what u say to ^?
18:59:59Ether-plays-4funI get this:
19:00:01Ether-plays-4funnimble.nim(4, 7) Error: cannot open 'httpclient'
19:00:01Ether-plays-4fun import httpclient, parseopt, os, strutils, osproc, pegs, tables, parseutils,
19:00:33ldleworkAraq: ah
19:01:13ekarlso-stuck again then :P
19:01:53Ether-plays-4funHow can I check which config file is loaded?
19:02:11reactormonkEther-plays-4fun, it should tell you when the complier loads them
19:02:22Ether-plays-4funI've got a feeling that nim.cfg isn't loaded.
19:02:29*alexruf joined #nim
19:03:09*HakanD quit (Quit: Be back later ...)
19:03:58*nande joined #nim
19:04:04Ether-plays-4funHmm. It tries to load it from %AppData%.
19:04:24AraqEther-plays-4fun: the compiler tells you exactly what config file it uses
19:05:00Ether-plays-4funHow about when it doesn't find it? Would it tell me that?
19:06:56reactormonkIt doesn't show up.
19:08:03Ether-plays-4funHmm. What determines the config lookup path?
19:08:04*Mat4 joined #nim
19:08:11Mat4hello
19:09:37*nimnoob quit (Remote host closed the connection)
19:09:53EXetoCreactormonk: I could only find this https://github.com/AdrianV/nimrod-tools/blob/master/seqslices.nim and it's only for sequences
19:11:48*adam_s joined #nim
19:11:54*gokr quit (Ping timeout: 245 seconds)
19:14:52*BitPuffin quit (Ping timeout: 245 seconds)
19:15:01*alexruf quit (Quit: My Mac has gone to sleep. ZZZzzz…)
19:17:07*alexruf joined #nim
19:18:33skyfex_Araq: sup?
19:18:59Araqyour patch breaks code
19:19:25Araqand I'm trying to fix it but I don't really get why unsigned needs to be compatible to 'int'
19:20:00Araqthe rules are complex already and they'll get more complex and subtle with these additions
19:24:00skyfex_I'm aware that this commit creates problems: https://github.com/skyfex/Nim/commit/7592c9cf22524332ef4b60bf050c046254685e9f but I don't believe I created a pull request for it?
19:26:12skyfex_Oh, I see that it sneaked in with the "support for 'u64 literals". I did not intend for that to happen.
19:26:54skyfex_Does a pull-request always reference the head of a branch? I thought it reference a specific commit or series of commits?
19:27:55reactormonkskyfex_, no, it's the head.
19:28:21skyfex_I'd recommend that you just revert that commit, and I hope you will accept my sincerest apologies for being a Git n00b :(
19:28:43*Puffin joined #nim
19:29:13dom96skyfex_: You should always create a new branch for each PR.
19:29:36dom96perhaps it would be a good idea for us to make this a rule for all PRs
19:29:56skyfex_dom96: Thanks, that makes sense, given how pull requests work
19:30:38Araqskyfex_: ah ok! lol.
19:30:44Araqthat explains a lot.
19:31:10AraqI thought you tested it insufficiently :P
19:33:12*Puffin quit (Ping timeout: 245 seconds)
19:37:04dom96ekarlso-: Yeah, unfortunately that seems to be an intermittent corruption that is still lurking.
19:38:25ldleworkAraq: I need anchors! :)
19:38:43dom96ekarlso-: or does that happen with `var resp = await client.get("http://foo.com")` ?
19:39:02dom96in any case, a segfault with that code is a bug and you should report it.
19:39:06dom96in jester's repo
19:39:17reactormonkAraq, how come Slice is not a concrete type?
19:40:04EXetoCekarlso-: did you see the last things I wrote?
19:40:20*rpag joined #nim
19:40:21skyfex_Araq: About the rules, I agree they're quite complex and that the uint conversions makes it worse. I was trying to get a better understanding of how type conversion works before I continued committing or proposing anything.
19:40:56ekarlso-EXetoC: ? ^
19:42:52ekarlso-I fixed it..
19:42:53*adam_s quit (Quit: Leaving)
19:43:52dom96ekarlso-: We definitely need better closure syntax.
19:44:09dom96That said, what you are doing is likely much slower than a couple of for each loops.
19:48:11*superfunc|busy joined #nim
19:49:01*brson joined #nim
19:51:35ekarlso-dom96: at this stage I dont think it matters :P
19:52:01def-dom96, ekarlso- yeah, i have a few measurements for that: https://github.com/def-/nim-iterutils/blob/master/src/iterutils.nim
19:53:44dom96def-: Where are the results for these measurements?
19:53:57def-in the top comment block
19:54:14def-https://github.com/def-/nim-iterutils/blob/master/src/iterutils.nim#L20-L55
19:55:33dom96oh, didn't notice the times.
19:58:21*UberLambda joined #nim
19:59:18ekarlso-can I get better errors then SIGSEGV: Illegal storage access. (Attempt to read from nil?)
19:59:26ekarlso-when something like that happens
20:00:58Araqekarlso-: how come you never read stack traces?
20:01:10EXetoCI did tell you. you built with -d:release?
20:01:15ekarlso-ah, sorry
20:03:09ekarlso-https://bpaste.net/show/a507a01f2c6b I dont see where it happens though
20:03:44*MightyJoe quit (Quit: No Ping reply in 180 seconds.)
20:04:17*MightyJoe joined #nim
20:04:42dom96unfortunately async stack traces need improvement
20:05:32Araqwhy do they still need improvement?
20:05:42Araqyou worked on them, right?
20:05:45dom96Araq: Take a look at ekarlso-'s paste
20:05:51Araqyes
20:05:53dom96not really
20:06:00*matkuki quit (Quit: ChatZilla 0.9.91.1 [Firefox 34.0.5/20141126041045])
20:06:00Araqmy question is why are they still so bad? :P
20:06:41*nande quit (Read error: Connection reset by peer)
20:07:08dom96because I don't know how to improve them
20:07:44Araqwhat's our twitter url again?
20:07:48Araqnim_lang ?
20:07:57def-yes
20:09:26ekarlso-hopeless to actually see where something went wrong -,,.
20:10:38dom96something to do with httpclient.get
20:10:47dom96show me your code
20:12:09ekarlso-dom96: actually it was due do accessing something like jobject["id"].str vs .num
20:12:37Araqekarlso-: you get an assertion failure for that
20:12:46Araqor some other exception
20:12:56Araqdon't use -d:release and complain
20:15:08*enquora quit (Quit: enquora)
20:18:18ekarlso-now then, just to fix JWT support :'(
20:18:25*Mat4 is now known as Mat4-work
20:18:30*nande joined #nim
20:19:19*Varriount|Busy quit (Ping timeout: 246 seconds)
20:20:45*enquora joined #nim
20:22:24dom96def-: Are you going to make a PR to replace sequtils with iterutils in the stdlib?
20:22:55dom96oh wait, I thought they had the same interface.
20:22:58dom96I guess not.
20:23:32VarriountMeep
20:23:37def-dom96: i don't know what's wanted in the stdlib and what not. iterutils don't even work right now anyway, because of a compiler bug
20:23:47def-2 compiler bugs*
20:23:56Araqyay
20:24:16def-Araq: they're reported already
20:25:01VarriountAraq: Sorry I wasn't around yesterday, I was recovering from travel
20:26:14ekarlso-https://nim-pkg.svcs.io:8080 < current packages stuff
20:26:27ekarlso-a bit broken atm with token stuffs but
20:26:56Araqldlework: 40%
20:27:09VarriountWee!
20:27:23AraqVarriount: no worries
20:27:34Araqldlework: 60%
20:28:19Araqldlework: 80%
20:28:40*jpoirier joined #nim
20:29:01Araqldlework: upload complete.
20:29:06VarriountAnyone know if dispatching to a procedure reference in a type is has a higher likelyhook of invalidating the cache vs multimethods?
20:29:10*rpag quit (Quit: Leaving)
20:29:40AraqVarriount: function pointers are still much faster than multimethods
20:29:51Araqfactor 3x or something like that
20:29:55*brson quit (Quit: leaving)
20:30:15Araqthey also work much better with our effect system
20:30:57VarriountAraq: Is there any advantage to using multimethods vs function pointers?
20:31:42Araqnot in my opinion but mm give a more traditional OO system
20:32:05VarriountHuh? Howso?
20:32:10Araqwell they do save space when you have lots of them
20:32:50Araqand are optimized to static calls if you don't use the polymorphism, I tend to forget about that
20:33:11VarriountAraq: Unless you use a dispatch table (for saving space)
20:33:23VarriountBut then you have the nasty double dereference
20:34:04Araqwith the upcoming DLL support for MMs they won't get faster anytime soon, unless Mat4-work gives us some JIT voodoo
20:36:09VarriountAraq: I started a "Common Conventions and Practices" guide for Nim, yesterday on the train, but I only have two things - using init<Type> and new<Type> procedure names, and warning about using inheritance with object types.
20:36:41skyfex_Araq: Using int/int8/int16 etc. as a function call `int8(x)` .. where is that defined and implemented? I can't seem to find it explained in the manual either, although I could've missed it
20:36:47VarriountI wrote something about multimethods vs function pointer dispatch, however it looks like most of what I wrote regarding that is garbage.
20:36:57Varriountskyfex_: That's a conversion.
20:37:06Araqskyfex_: "type conversions" in the manual
20:37:15Araqabove "cast" iirc
20:37:46skyfex_Yeah
20:37:48skyfex_Found it
20:39:30AraqVarriount: I just saw tut1 has a nice section about variable shadowing
20:39:42Araqthat's certainly something you should include
20:39:52VarriountAraq: Will do, thanks.
20:41:30VarriountAraq: I have the possible fix for the tester hanging, I just need to test it.
20:41:33*adam_s joined #nim
20:41:44Varriount(which is, on reflection, ironic)
20:42:53flaviuVarriount: https://github.com/Araq/Nim/pull/1943
20:44:25skyfex_Araq: type conversion as described in the manual only work on int/float types, yeah?
20:44:51Araqskyfex_: no, object types for supporting inheritance
20:45:02Araqconversions from 'distinct T' to 'T'
20:45:20ekarlso-any feedback would be nice..
20:45:21Araqmaybe others I forgot about
20:45:37Araqekarlso-: sorry. I'm busy
20:46:10skyfex_Araq: Thanks, maybe that should be described in the manual
20:46:31flaviuekarlso-: Looks fine, but it breaks when I log in.
20:46:45ekarlso-flaviu: working on it :p
20:47:04Araqskyfex_: it is, but not in this section. but yes. PRs welcome as usual
20:47:30flaviuekarlso-: Ok. Also, anonymous users should not be able to submit packages.
20:48:24flaviuekarlso-: HP Cloud?
20:48:40flaviuI've never heard of that before
20:49:01ekarlso-flaviu: heh, I just used it when generating the cert..
20:49:04ekarlso-template I have
20:49:19ekarlso-I'll state though that HP is not involved at all for this.
20:50:17flaviuIt's not a good idea to make a certificate with their name on it, but it's of little enough importance at this stage.
20:57:11*pjc joined #nim
20:57:24*Matthias247 quit (Read error: Connection reset by peer)
20:57:27Araqhi pjc welcome
20:57:52pjchi Araq. Thanks
20:59:36*brson joined #nim
21:00:19ekarlso-flaviu: need to fix JWT support before the auth stuff works correctly :'(
21:00:29*adam_s left #nim ("Leaving")
21:05:02*Sergio965 quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
21:05:40*Sergio965 joined #nim
21:06:46*Sergio965 quit (Client Quit)
21:06:59*Sergio965 joined #nim
21:09:36*Sergio965 quit (Client Quit)
21:11:19*Sergio965 joined #nim
21:11:30*Sergio965 quit (Client Quit)
21:18:37*Sergio965 joined #nim
21:21:15*Sergio965 quit (Read error: Connection reset by peer)
21:27:07Araqso who's ready for some mini DSL design questions?
21:27:29AraqI'm designing a much more sophisticated 'importcpp' pragma
21:27:52Araqthe idea is that you can give it a pattern to better support C++
21:28:12Araqright now I have this:
21:28:30Araq$#.$#($#) # method call
21:28:47Araq$#($#) # ordinary ('static') call
21:29:00Araqnew $# # invoke 'new T'
21:29:34Araq$#.$#<$#>($#) # templated method call
21:30:30Araq$# + $# # invoke + operator
21:32:07*flan3002 quit (*.net *.split)
21:32:07*CARAM__ quit (*.net *.split)
21:32:07*wan quit (*.net *.split)
21:32:07*ldlework quit (*.net *.split)
21:32:08*wtw quit (*.net *.split)
21:32:08*flyx quit (*.net *.split)
21:32:08*gour quit (*.net *.split)
21:32:09*vezzy quit (*.net *.split)
21:32:09*lyro quit (*.net *.split)
21:32:10*Boscop quit (*.net *.split)
21:32:10*phI||Ip quit (*.net *.split)
21:32:10*silven quit (*.net *.split)
21:32:10*skroll3 quit (*.net *.split)
21:32:10*ekarlso- quit (*.net *.split)
21:32:10*betawaffle quit (*.net *.split)
21:32:11*acidx quit (*.net *.split)
21:32:11*nande quit (*.net *.split)
21:32:12*kniteli quit (*.net *.split)
21:32:13*MyMind quit (*.net *.split)
21:32:13*enquora quit (*.net *.split)
21:32:13*BlaXpirit quit (*.net *.split)
21:32:14*dts|pokeball quit (*.net *.split)
21:32:14*fowl quit (*.net *.split)
21:32:14*EXetoC quit (*.net *.split)
21:32:14*Ether-plays-4fun quit (*.net *.split)
21:32:14*joebo quit (*.net *.split)
21:32:14*eigenlicht quit (*.net *.split)
21:32:16*irrequietus quit (*.net *.split)
21:32:16*vendethiel quit (*.net *.split)
21:32:16*JStoker quit (*.net *.split)
21:32:16*Trixar_za quit (*.net *.split)
21:32:17*jsudlow quit (*.net *.split)
21:32:17*SplinterOfChaos quit (*.net *.split)
21:32:17*novist quit (*.net *.split)
21:32:17*x4nt quit (*.net *.split)
21:32:18*xAndy quit (*.net *.split)
21:32:18*Amrykid quit (*.net *.split)
21:32:18*hguux_ quit (*.net *.split)
21:32:20*TylerE_ quit (*.net *.split)
21:32:20*Triplefox quit (*.net *.split)
21:32:20*akyte quit (*.net *.split)
21:32:20*jpoirier quit (*.net *.split)
21:32:21*onionhammer quit (*.net *.split)
21:32:21*zielmicha quit (*.net *.split)
21:32:22*adam12 quit (*.net *.split)
21:32:23*reloc0 quit (*.net *.split)
21:32:23*alexruf quit (*.net *.split)
21:32:23*sillesta quit (*.net *.split)
21:32:23*reactormonk quit (*.net *.split)
21:32:23*Jesin quit (*.net *.split)
21:32:24*sdw quit (*.net *.split)
21:32:25*superfunc|busy quit (*.net *.split)
21:32:26*saml quit (*.net *.split)
21:32:26*VinceAddons quit (*.net *.split)
21:32:27*iivvoo quit (*.net *.split)
21:32:27*dymk quit (*.net *.split)
21:32:27*EastByte_ quit (*.net *.split)
21:32:27*skyfex_ quit (*.net *.split)
21:32:28*flaviu quit (*.net *.split)
21:32:28*valberg quit (*.net *.split)
21:32:28*vegai quit (*.net *.split)
21:32:28*jez0990 quit (*.net *.split)
21:32:28*milosn quit (*.net *.split)
21:32:28*def- quit (*.net *.split)
21:32:28*delian66 quit (*.net *.split)
21:32:29*dv- quit (*.net *.split)
21:32:30*clone1018 quit (*.net *.split)
21:32:30*endou______ quit (*.net *.split)
21:32:30*[dee] quit (*.net *.split)
21:32:30*profan quit (*.net *.split)
21:32:31*clone1018__ quit (*.net *.split)
21:32:31*Grauwolf quit (*.net *.split)
21:32:32*KoFish quit (*.net *.split)
21:32:32*Guest81214 quit (*.net *.split)
21:32:33*[CBR]Unspoken quit (*.net *.split)
21:32:33*dom96 quit (*.net *.split)
21:32:34*voldern quit (*.net *.split)
21:32:34*comex quit (*.net *.split)
21:32:35*AMorpork quit (*.net *.split)
21:32:35*fold quit (*.net *.split)
21:32:35*pjc quit (*.net *.split)
21:32:36*renesac quit (*.net *.split)
21:35:51*pjc joined #nim
21:35:51*jpoirier joined #nim
21:35:51*enquora joined #nim
21:35:51*nande joined #nim
21:35:51*superfunc|busy joined #nim
21:35:51*alexruf joined #nim
21:35:51*Ether-plays-4fun joined #nim
21:35:51*BlaXpirit joined #nim
21:35:51*Guest81214 joined #nim
21:35:51*saml joined #nim
21:35:51*VinceAddons joined #nim
21:35:51*irrequietus joined #nim
21:35:51*sillesta joined #nim
21:35:51*KoFish joined #nim
21:35:51*flan3002 joined #nim
21:35:51*gour joined #nim
21:35:51*reactormonk joined #nim
21:35:51*vendethiel joined #nim
21:35:51*dts|pokeball joined #nim
21:35:51*JStoker joined #nim
21:35:51*fowl joined #nim
21:35:51*Trixar_za joined #nim
21:35:51*vezzy joined #nim
21:35:51*iivvoo joined #nim
21:35:51*dymk joined #nim
21:35:51*EastByte_ joined #nim
21:35:51*CARAM__ joined #nim
21:35:51*skyfex_ joined #nim
21:35:51*jsudlow joined #nim
21:35:51*Jesin joined #nim
21:35:51*EXetoC joined #nim
21:35:51*SplinterOfChaos joined #nim
21:35:51*[CBR]Unspoken joined #nim
21:35:51*novist joined #nim
21:35:51*onionhammer joined #nim
21:35:51*kniteli joined #nim
21:35:51*sdw joined #nim
21:35:51*wan joined #nim
21:35:51*ldlework joined #nim
21:35:51*x4nt joined #nim
21:35:51*renesac joined #nim
21:35:51*zielmicha joined #nim
21:35:51*flaviu joined #nim
21:35:51*wtw joined #nim
21:35:51*flyx joined #nim
21:35:51*[dee] joined #nim
21:35:51*dom96 joined #nim
21:35:51*acidx joined #nim
21:35:51*betawaffle joined #nim
21:35:51*ekarlso- joined #nim
21:35:51*skroll3 joined #nim
21:35:51*silven joined #nim
21:35:51*phI||Ip joined #nim
21:35:51*Boscop joined #nim
21:35:51*lyro joined #nim
21:35:51*xAndy joined #nim
21:35:51*Amrykid joined #nim
21:35:51*joebo joined #nim
21:35:51*vegai joined #nim
21:35:51*valberg joined #nim
21:35:51*eigenlicht joined #nim
21:35:51*jez0990 joined #nim
21:35:51*hguux_ joined #nim
21:35:51*milosn joined #nim
21:35:51*def- joined #nim
21:35:51*delian66 joined #nim
21:35:51*MyMind joined #nim
21:35:51*Grauwolf joined #nim
21:35:51*fold joined #nim
21:35:51*akyte joined #nim
21:35:51*clone1018 joined #nim
21:35:51*endou______ joined #nim
21:35:51*voldern joined #nim
21:35:51*adam12 joined #nim
21:35:51*profan joined #nim
21:35:51*AMorpork joined #nim
21:35:51*reloc0 joined #nim
21:35:51*comex joined #nim
21:35:51*clone1018__ joined #nim
21:35:51*Triplefox joined #nim
21:35:51*dv- joined #nim
21:35:51*TylerE_ joined #nim
21:35:55*flan3002 quit (*.net *.split)
21:35:55*CARAM__ quit (*.net *.split)
21:35:55*wan quit (*.net *.split)
21:35:56*ldlework quit (*.net *.split)
21:35:56*wtw quit (*.net *.split)
21:35:56*flyx quit (*.net *.split)
21:35:56*gour quit (*.net *.split)
21:35:57*vezzy quit (*.net *.split)
21:35:57*lyro quit (*.net *.split)
21:35:58*Boscop quit (*.net *.split)
21:35:58*phI||Ip quit (*.net *.split)
21:35:58*silven quit (*.net *.split)
21:35:58*skroll3 quit (*.net *.split)
21:35:58*ekarlso- quit (*.net *.split)
21:35:58*betawaffle quit (*.net *.split)
21:35:59*acidx quit (*.net *.split)
21:35:59*nande quit (*.net *.split)
21:36:00*kniteli quit (*.net *.split)
21:36:01*MyMind quit (*.net *.split)
21:36:02*irrequietus quit (*.net *.split)
21:36:02*vendethiel quit (*.net *.split)
21:36:02*JStoker quit (*.net *.split)
21:36:02*Trixar_za quit (*.net *.split)
21:36:03*jsudlow quit (*.net *.split)
21:36:03*SplinterOfChaos quit (*.net *.split)
21:36:03*novist quit (*.net *.split)
21:36:03*x4nt quit (*.net *.split)
21:36:04*xAndy quit (*.net *.split)
21:36:04*Amrykid quit (*.net *.split)
21:36:04*hguux_ quit (*.net *.split)
21:36:05*TylerE_ quit (*.net *.split)
21:36:05*Triplefox quit (*.net *.split)
21:36:06*akyte quit (*.net *.split)
21:36:06*jpoirier quit (*.net *.split)
21:36:07*onionhammer quit (*.net *.split)
21:36:07*zielmicha quit (*.net *.split)
21:36:08*adam12 quit (*.net *.split)
21:36:08*reloc0 quit (*.net *.split)
21:36:08*alexruf quit (*.net *.split)
21:36:09*sillesta quit (*.net *.split)
21:36:09*reactormonk quit (*.net *.split)
21:36:09*Jesin quit (*.net *.split)
21:36:10*sdw quit (*.net *.split)
21:36:11*superfunc|busy quit (*.net *.split)
21:36:11*saml quit (*.net *.split)
21:36:11*VinceAddons quit (*.net *.split)
21:36:12*iivvoo quit (*.net *.split)
21:36:12*dymk quit (*.net *.split)
21:36:12*EastByte_ quit (*.net *.split)
21:36:13*skyfex_ quit (*.net *.split)
21:36:13*flaviu quit (*.net *.split)
21:36:13*valberg quit (*.net *.split)
21:36:13*vegai quit (*.net *.split)
21:36:13*jez0990 quit (*.net *.split)
21:36:13*milosn quit (*.net *.split)
21:36:14*def- quit (*.net *.split)
21:36:14*delian66 quit (*.net *.split)
21:36:14*dv- quit (*.net *.split)
21:36:15*clone1018 quit (*.net *.split)
21:36:15*endou______ quit (*.net *.split)
21:36:15*[dee] quit (*.net *.split)
21:36:15*profan quit (*.net *.split)
21:36:16*clone1018__ quit (*.net *.split)
21:36:16*Grauwolf quit (*.net *.split)
21:36:17*KoFish quit (*.net *.split)
21:36:17*Guest81214 quit (*.net *.split)
21:36:18*[CBR]Unspoken quit (*.net *.split)
21:36:18*dom96 quit (*.net *.split)
21:36:19*voldern quit (*.net *.split)
21:36:19*comex quit (*.net *.split)
21:36:20*AMorpork quit (*.net *.split)
21:36:20*fold quit (*.net *.split)
21:36:20*pjc quit (*.net *.split)
21:36:20*renesac quit (*.net *.split)
21:36:21*shodan45 quit (Remote host closed the connection)
21:36:41*pjc joined #nim
21:36:41*jpoirier joined #nim
21:36:41*nande joined #nim
21:36:41*superfunc|busy joined #nim
21:36:41*alexruf joined #nim
21:36:41*Guest81214 joined #nim
21:36:41*saml joined #nim
21:36:41*VinceAddons joined #nim
21:36:41*irrequietus joined #nim
21:36:41*sillesta joined #nim
21:36:41*KoFish joined #nim
21:36:41*flan3002 joined #nim
21:36:41*gour joined #nim
21:36:41*reactormonk joined #nim
21:36:41*vendethiel joined #nim
21:36:41*JStoker joined #nim
21:36:41*Trixar_za joined #nim
21:36:41*vezzy joined #nim
21:36:41*iivvoo joined #nim
21:36:41*dymk joined #nim
21:36:41*EastByte_ joined #nim
21:36:41*CARAM__ joined #nim
21:36:41*skyfex_ joined #nim
21:36:41*jsudlow joined #nim
21:36:41*Jesin joined #nim
21:36:41*SplinterOfChaos joined #nim
21:36:41*[CBR]Unspoken joined #nim
21:36:41*novist joined #nim
21:36:41*onionhammer joined #nim
21:36:41*kniteli joined #nim
21:36:41*sdw joined #nim
21:36:41*wan joined #nim
21:36:41*ldlework joined #nim
21:36:41*x4nt joined #nim
21:36:41*renesac joined #nim
21:36:41*zielmicha joined #nim
21:36:41*flaviu joined #nim
21:36:41*wtw joined #nim
21:36:41*flyx joined #nim
21:36:41*[dee] joined #nim
21:36:41*dom96 joined #nim
21:36:41*acidx joined #nim
21:36:41*betawaffle joined #nim
21:36:41*ekarlso- joined #nim
21:36:41*skroll3 joined #nim
21:36:41*silven joined #nim
21:36:41*phI||Ip joined #nim
21:36:41*Boscop joined #nim
21:36:41*lyro joined #nim
21:36:41*xAndy joined #nim
21:36:41*Amrykid joined #nim
21:36:41*vegai joined #nim
21:36:41*valberg joined #nim
21:36:41*jez0990 joined #nim
21:36:41*hguux_ joined #nim
21:36:41*milosn joined #nim
21:36:41*def- joined #nim
21:36:41*delian66 joined #nim
21:36:41*MyMind joined #nim
21:36:41*Grauwolf joined #nim
21:36:41*fold joined #nim
21:36:41*akyte joined #nim
21:36:41*clone1018 joined #nim
21:36:41*endou______ joined #nim
21:36:41*voldern joined #nim
21:36:41*adam12 joined #nim
21:36:41*profan joined #nim
21:36:41*TylerE_ joined #nim
21:36:41*dv- joined #nim
21:36:41*Triplefox joined #nim
21:36:41*clone1018__ joined #nim
21:36:41*comex joined #nim
21:36:41*reloc0 joined #nim
21:36:41*AMorpork joined #nim
21:36:42*Etheco quit (Max SendQ exceeded)
21:36:43*Trixar_za quit (Ping timeout: 253 seconds)
21:36:44*Etheco joined #nim
21:36:45*shodan45_ joined #nim
21:36:45flaviuex, $#($@)
21:36:46*flan3002 quit (*.net *.split)
21:36:46*CARAM__ quit (*.net *.split)
21:36:46*wan quit (*.net *.split)
21:36:46*ldlework quit (*.net *.split)
21:36:47*wtw quit (*.net *.split)
21:36:47*flyx quit (*.net *.split)
21:37:36*flan3002 joined #nim
21:37:37*CARAM__ joined #nim
21:37:37*wan joined #nim
21:37:37*ldlework joined #nim
21:37:37*wtw joined #nim
21:37:37*flyx joined #nim
21:37:37*Trixar_za joined #nim
21:37:48Araqbut all these $# are not consistent with how strutils.% would do it, so I might as well just use #
21:38:35*gour quit (*.net *.split)
21:38:36*vezzy quit (*.net *.split)
21:38:36*lyro quit (*.net *.split)
21:38:37*Boscop quit (*.net *.split)
21:38:37*phI||Ip quit (*.net *.split)
21:38:37*silven quit (*.net *.split)
21:38:37*skroll3 quit (*.net *.split)
21:38:37*ekarlso- quit (*.net *.split)
21:38:37*betawaffle quit (*.net *.split)
21:38:38*acidx quit (*.net *.split)
21:39:12Araqor I might pick proper subex syntax
21:40:37*gour joined #nim
21:40:37*vezzy joined #nim
21:40:37*lyro joined #nim
21:40:37*Boscop joined #nim
21:40:37*phI||Ip joined #nim
21:40:37*silven joined #nim
21:40:37*skroll3 joined #nim
21:40:37*ekarlso- joined #nim
21:40:37*betawaffle joined #nim
21:40:37*acidx joined #nim
21:40:41flaviuBorrow a bit of notation from perl and do `$$($@)`?
21:41:04*tinAndi joined #nim
21:41:05Araqwell things like <$#> are context dependent
21:41:16Araqotherwise the type parameters are not even generated
21:41:30flaviu`$T@`?
21:41:38Araqso I can only borrow so much
21:42:52renesacAraq: prong
21:42:55Araqflaviu: there are not so many special characters left since we support C++'s operators verbatim
21:43:04renesacI see that skyfex_ already answered you
21:43:09*nande quit (*.net *.split)
21:43:10*kniteli quit (*.net *.split)
21:43:10*MyMind quit (*.net *.split)
21:43:12Araqindeed
21:43:32Araqoh come on. do these net splits never stop tonight?
21:43:33*nande joined #nim
21:43:33*kniteli joined #nim
21:43:33*MyMind joined #nim
21:43:56*MyMind quit (Max SendQ exceeded)
21:44:04dom96Araq:
21:44:04dom96-mquin- [Global Notice] We are about to start rehubbing the network ahead of planned maintenance work. This will cause some netsplits, but should be completed shortly. Thank you for your patience and for flying freenode! :)
21:44:07renesacwell, working with uints is a pain w/o better conversion rules, especially because literal numbers are quite incompatible with uints as it is
21:44:09*irrequietus quit (*.net *.split)
21:44:09*vendethiel quit (*.net *.split)
21:44:10*JStoker quit (*.net *.split)
21:44:10*jsudlow quit (*.net *.split)
21:44:10*SplinterOfChaos quit (*.net *.split)
21:44:10*novist quit (*.net *.split)
21:44:11*x4nt quit (*.net *.split)
21:44:11*xAndy quit (*.net *.split)
21:44:11*Amrykid quit (*.net *.split)
21:44:11*hguux_ quit (*.net *.split)
21:44:12*TylerE_ quit (*.net *.split)
21:44:13*Triplefox quit (*.net *.split)
21:44:13*akyte quit (*.net *.split)
21:44:27renesacAraq: they answered you
21:44:29Araqrenesac: they are not.
21:44:40Araqint literals get special treatment
21:44:41flaviuAraq: $ is not a valid operator or identifier in standards-conforming C++.
21:44:43ekarlso-flaviu: what stuff does hs256 ?
21:44:48ekarlso-openssl ?
21:44:51Araqflaviu: yes
21:45:26Araqbut after $ and @ you need something for template types and then it starts to get ugly
21:45:28*MyMind joined #nim
21:45:41renesacAraq: I can't even test if a uint is == 0, w/o converting zero first
21:46:21renesacAraq: why don't you do a NEP on this dsl issue?
21:46:25renesac:)
21:46:57Araqrenesac: no. I need it done tonight
21:47:22flaviuekarlso-: HS256 == HMAC using SHA-256
21:47:35renesacAraq: why the hurry?
21:47:38ekarlso-flaviu: ahhh
21:47:50Araqflaviu: and the contextual syntax is much nicer anyway. #.#<#, #>(#)
21:47:58flaviuekarlso-: read the standard: https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-38
21:48:10*jpoirier quit (*.net *.split)
21:48:11*onionhammer quit (*.net *.split)
21:48:11*zielmicha quit (*.net *.split)
21:48:12*adam12 quit (*.net *.split)
21:48:12*reloc0 quit (*.net *.split)
21:48:28flaviuAraq: It's too complicated, but I can't stop you from doing things however you'd like.
21:48:50flaviuNim needs to be simplified more than it needs to be made more complicated.
21:49:25Araqflaviu: C++ support in the FFI is not where you can cut down complexity
21:49:35ekarlso-flaviu: man that's TLDR for now..
21:50:11flaviuekarlso-: Well, you better read it if you want to implement it. http://www.askyb.com/cpp/openssl-hmac-hasing-example-in-cpp/ is useful if you want to know how to do an HMAC with openssl.
21:50:37*irrequietus joined #nim
21:50:37*vendethiel joined #nim
21:50:37*JStoker joined #nim
21:50:37*jsudlow joined #nim
21:50:37*SplinterOfChaos joined #nim
21:50:37*novist joined #nim
21:50:37*x4nt joined #nim
21:50:37*xAndy joined #nim
21:50:37*Amrykid joined #nim
21:50:37*hguux_ joined #nim
21:50:37*akyte joined #nim
21:50:37*TylerE_ joined #nim
21:50:37*Triplefox joined #nim
21:51:05flaviuAraq: But you can cut down on complexity in parsing the description.
21:51:49Araqflaviu: fair point. but parsing is a finger exercise
21:51:51*TylerE_ quit (Max SendQ exceeded)
21:51:52*JStoker quit (Max SendQ exceeded)
21:51:53*hguux_ quit (Max SendQ exceeded)
21:52:10*TylerE joined #nim
21:52:16*hguux_ joined #nim
21:52:20*JStoker joined #nim
21:52:24*TylerE quit (Changing host)
21:52:24*TylerE joined #nim
21:52:24*hguux_ quit (Changing host)
21:52:24*hguux_ joined #nim
21:52:53*jpoirier_ joined #nim
21:53:11*superfunc|busy quit (*.net *.split)
21:53:11*saml quit (*.net *.split)
21:53:11*VinceAddons quit (*.net *.split)
21:53:12*iivvoo quit (*.net *.split)
21:53:12*dymk quit (*.net *.split)
21:53:13*EastByte_ quit (*.net *.split)
21:53:13*skyfex_ quit (*.net *.split)
21:53:13*flaviu quit (*.net *.split)
21:53:14*valberg quit (*.net *.split)
21:53:14*vegai quit (*.net *.split)
21:53:14*jez0990 quit (*.net *.split)
21:53:14*milosn quit (*.net *.split)
21:53:14*def- quit (*.net *.split)
21:53:14*delian66 quit (*.net *.split)
21:53:14*dv- quit (*.net *.split)
21:53:57*superfunc|busy joined #nim
21:53:57*saml joined #nim
21:53:57*VinceAddons joined #nim
21:53:57*iivvoo joined #nim
21:53:57*dymk joined #nim
21:53:57*EastByte_ joined #nim
21:53:57*skyfex_ joined #nim
21:53:57*flaviu joined #nim
21:53:57*vegai joined #nim
21:53:57*valberg joined #nim
21:53:57*jez0990 joined #nim
21:53:57*milosn joined #nim
21:53:57*def- joined #nim
21:53:57*delian66 joined #nim
21:53:57*dv- joined #nim
21:54:09*clone1018 quit (*.net *.split)
21:54:09*endou______ quit (*.net *.split)
21:54:09*[dee] quit (*.net *.split)
21:54:09*profan quit (*.net *.split)
21:54:10*clone1018__ quit (*.net *.split)
21:54:10*Grauwolf quit (*.net *.split)
21:54:11*KoFish quit (*.net *.split)
21:54:20*adam| joined #nim
21:54:34*KoFish joined #nim
21:54:34*[dee] joined #nim
21:54:34*Grauwolf joined #nim
21:54:34*clone1018 joined #nim
21:54:34*endou______ joined #nim
21:54:34*profan joined #nim
21:54:34*clone1018__ joined #nim
21:54:44flaviubtw, netsplit? http://i.imgur.com/Bq3AoK5.png What netsplit? :P
21:54:49*clone1018__ quit (Max SendQ exceeded)
21:54:52*Guest81214 quit (*.net *.split)
21:54:52*[CBR]Unspoken quit (*.net *.split)
21:54:53*dom96 quit (*.net *.split)
21:54:53*voldern quit (*.net *.split)
21:54:54*comex quit (*.net *.split)
21:54:54*AMorpork quit (*.net *.split)
21:54:55*fold quit (*.net *.split)
21:55:02*clone1018_ joined #nim
21:55:31*jpoirier joined #nim
21:55:31*onionhammer joined #nim
21:55:31*zielmicha joined #nim
21:55:31*adam12 joined #nim
21:55:31*reloc0 joined #nim
21:55:38*adam12 quit (Max SendQ exceeded)
21:55:38*jpoirier quit (Max SendQ exceeded)
21:56:12Araqrenesac: I'll have a look then, but int literals can easily be made compatible to uints
21:56:16ekarlso-flaviu: does the poenssl lib in nim do hmac?
21:56:56EXetoCrenesac: typing the 0 as unsigned is not necessary
21:56:58renesacAraq: and being able to add a uint8 to a int is also very usefull...
21:57:02EXetoCwhat you have to do is import unsigned in any case
21:57:11*shodan45_ quit (Read error: Connection reset by peer)
21:57:19renesacEXetoC: I don't know if it changed
21:57:25*pjc quit (*.net *.split)
21:57:25*renesac quit (*.net *.split)
21:57:32*pjc joined #nim
21:57:32*renesac joined #nim
21:57:35flaviuekarlso-: Nope, but it should be trivial to wrap
21:57:43renesaceven importing unsigned
21:57:49renesaceven importing unsigned
21:57:54EXetoCrenesac: it must have been quite some time ago. how long have you been using nim?
21:58:00EXetoCrenesac: you often needs unsigned types?
21:58:19renesacyep
21:58:24ekarlso-flaviu: so unchartered waters then *again*
21:58:27renesachttps://github.com/Araq/Nim/issues/936
21:58:28ekarlso-*d0h*
21:58:32renesacEXetoC: here the issue
21:59:24*shodan45_ joined #nim
21:59:25*Guest81214 joined #nim
21:59:25*[CBR]Unspoken joined #nim
21:59:25*dom96 joined #nim
21:59:25*fold joined #nim
21:59:25*voldern joined #nim
21:59:25*comex joined #nim
21:59:25*AMorpork joined #nim
22:00:40*superfunc|busy quit (Ping timeout: 265 seconds)
22:00:43flaviuekarlso-: It really is trivial
22:01:05Araqrenesac: we can fix this by adding more overloads for '+' etc. in unsigned.nim
22:01:12ekarlso-flaviu: guess I'll try tmrw..
22:01:36flaviuc2nim should deal with 7 functions and a struct without problems.
22:01:38Araqthough converters should already have low priority, dunno why adding these causes code breakage
22:01:59EXetoCAraq: why weren't the actual types not moved there?
22:02:02ekarlso-flaviu: c2nim you mean for me ?
22:02:05Araqrenesac: either way, we can fix this without more complex rules in the compiler itself
22:02:06renesacEXetoC: in most of what I write in nim, that can't be written in python for example because of performance, I work with bytes, not really numbers
22:02:10*UberLambda quit (Ping timeout: 244 seconds)
22:02:17*hguux_ quit (*.net *.split)
22:02:17*TylerE quit (*.net *.split)
22:02:18*irrequietus quit (*.net *.split)
22:02:18*vendethiel quit (*.net *.split)
22:02:19*jsudlow quit (*.net *.split)
22:02:19*SplinterOfChaos quit (*.net *.split)
22:02:19*novist quit (*.net *.split)
22:02:19*x4nt quit (*.net *.split)
22:02:20*Amrykid quit (*.net *.split)
22:02:20*xAndy quit (*.net *.split)
22:02:21*Triplefox quit (*.net *.split)
22:02:21*akyte quit (*.net *.split)
22:02:23renesacAraq: and array indexing with uints?
22:02:31flaviuekarlso-: yep
22:02:32EXetoCrenesac: the array indexing issue is barely an issue though
22:02:38*shodan45_ quit (Remote host closed the connection)
22:02:44renesacerrr, no
22:02:47renesaclook up tables
22:02:49renesacetc
22:03:14renesacusually with uint8
22:03:18ekarlso-flaviu: how you use that ?
22:03:27flaviuc2nim header.h
22:03:27Araqso give the array index type as what you need
22:04:14renesacwhat?
22:04:21*milosn quit (Remote host closed the connection)
22:04:24EXetoCright, an array rather than a sequence
22:04:39*Jesin quit (Remote host closed the connection)
22:04:45Araqconst lookupArray: array [0..5u8, char] = [ ... ]
22:05:21renesacoh, I didn't know that it was possible
22:05:21EXetoCdoesn't work though
22:05:48renesacbut then I can't addres it with integers, right?
22:05:50EXetoC"range is empty". will look for existing issues
22:06:04EXetoCjust convert the value
22:06:18*hguux_ joined #nim
22:06:18*TylerE joined #nim
22:06:18*irrequietus joined #nim
22:06:18*vendethiel joined #nim
22:06:18*jsudlow joined #nim
22:06:18*SplinterOfChaos joined #nim
22:06:18*novist joined #nim
22:06:18*x4nt joined #nim
22:06:18*xAndy joined #nim
22:06:18*Amrykid joined #nim
22:06:18*akyte joined #nim
22:06:18*Triplefox joined #nim
22:06:31renesacyeah, but those conversions everywhere are tiring, and polute the code
22:06:35EXetoCalternatively add your own abstractions by defining a type
22:06:56renesacand you aways forget some, and then have to correct and recompile, and so on
22:07:13Araqok, that's broken right now (the array index)
22:07:27*milosn joined #nim
22:07:28Araqbut that's just a bug, nothing that needs a language redesign
22:07:49*fmoralesc joined #nim
22:07:52renesacand the manual says that widening conversions for integers are automatic, and that is really the best, if it worked
22:08:11*Jesin joined #nim
22:08:20Araqbut it breaks someUint16 shr 5
22:08:24EXetoCwhat you just mentioned is not a case of widening though
22:08:26ekarlso-c2nim --header /usr/include/openssl/hmac.h -o hmac.nim ?
22:08:49Araqbecause then the 'int' version matches better etc.
22:08:52renesacAraq: indeed
22:09:03renesacthat was the last problem we were discussing...
22:09:43EXetoCa signed number might be outside the range
22:10:26*atomic-hedgehog quit (Ping timeout: 244 seconds)
22:10:26*rpag joined #nim
22:11:01ekarlso-flaviu: any hints would be uber
22:11:22*atomic-hedgehog joined #nim
22:11:48flaviuekarlso-: Well, it's literally just `c2nim header.h`, but on further investigation, it seems like hmac.h includes some other headers.
22:12:14flaviuso that's insufficient.
22:12:15ekarlso-great :p
22:13:25*renesac_ joined #nim
22:13:25*renesac quit (Ping timeout: 246 seconds)
22:13:46renesac_hi again
22:14:05renesac_the problem with shl is the function definition
22:14:20renesac_it should accept distinct SomeInteger
22:14:24ekarlso-clues then flaviu ?
22:14:30*fmoralesc left #nim ("Leaving")
22:14:50renesac_so no need to reach the minimum common denominator for that
22:14:54flaviuekarlso-: Working on it. Maybe I can use some regexes to eliminate superflous includes and pass it through the preproessor?
22:15:14ekarlso-flaviu: I dunno :/ I got no clue on C code
22:15:17ekarlso-and it's late here :|
22:15:33flaviuekarlso-: go to bed then, this might take a while
22:15:44ekarlso-flaviu: leave me a ping :)
22:15:46ekarlso-adios
22:21:47flaviuc2nim doesn't support functions returning a function pointer apparently.
22:22:05*BlaXpirit quit (Quit: Quit Konversation)
22:22:07Araqflaviu: quite possible
22:22:18Araqyou're welcome to fix it :P
22:22:32AraqI'm still not sure I got the FP syntax
22:22:54Araqapparently you can leave out the * sometimes
22:23:21Araqyou can also do this iirc:
22:23:30flaviuAraq: That bit me once, I left out the * accidentally and everything broke.
22:23:45Araqvoid (*fn)( int, int) typedef const;
22:24:03Araq'typedef' is just some qualifier
22:25:20*keyle joined #nim
22:25:41AraqC's syntax fits C's semantics perfectly. it's garbage.
22:25:45*Sergio965 joined #nim
22:26:18keylemorning
22:27:09EXetoCoh no the memories are coming back
22:27:32flaviuC wasn't that bad. I never had the compiler crash ;)
22:27:44*rpag quit (Quit: Leaving)
22:28:14def-flaviu: I did, but it turned out to be a single defective bit in my RAM...
22:28:35flaviudef-: non-ecc pleb :P
22:28:48EXetoCdid you poke it? maybe that fixes it
22:29:00keyleAraq: the mac is still running, I will leave it on for the day
22:29:10EXetoCright, it's not like a hdd :p
22:29:15Araqflaviu: that's always your argument when you have no real arguments left.
22:29:30def-EXetoC: i just disabled a few bytes of memory around it, now it's fine
22:29:51Araqso ooohh software with paid devs on it has fewer bugs. big news.
22:30:03flaviuAraq: It is, I won't argue otherwise
22:30:52Araqyou don't have to compare C to Nim if Nim is an unstable piece of crap for you. you can compare it against most other languages instead.
22:31:11Araqthey all have much saner syntax and semantics.
22:32:19*pjc quit (Ping timeout: 246 seconds)
22:35:48*voldern quit (Quit: WeeChat 0.4.4-dev)
22:38:12*HakanD joined #nim
22:40:01*irrequietus quit ()
22:43:48flaviuI came across an interesting idea in Marpa::R2.
22:44:13flaviuWhat if the parser told the lexer what tokens it wants and the lexer tries to give it those tokens?
22:45:12Araqworks and for some languages even required (C / C++)
22:45:17flaviuan interesting idea they came up with was "ruby slippers". If the lexer cannot fulfill the request, it returns the expected result anyway.
22:45:46flaviuAnd an error, but the parser has no idea what's happened and can continue with the parse as usual.
22:45:54Araqyou can do all sorts of hacks in the lexer-parser interaction
22:46:18Araqyou can even do without a lexer at all
22:46:32flaviuI was just thinking about it while resolving keyword collisions in this header :)
22:47:01Araqc2nim now quotes keywords for you
22:47:14flaviuI must have an old version then
22:47:22Araqyes
22:47:35Araqit can also do --nep1 for you
22:48:17*Mat4-work is now known as Mat4
22:49:36flaviuThey used the ruby slippers to parse html, really interesting stuff.
22:52:22flaviuhttps://gist.github.com/flaviut/5dc7af1cace0549ebd3f
22:52:38flaviu"illegal recursion", but all the recursion is behind ptrs
22:53:44Araqmaybe not for CRYPTO_EX_DATA
22:54:16flaviuNope, that's just a pointer and an int
22:54:27*atomic-hedgehog quit (Ping timeout: 245 seconds)
22:54:57Araqreport it, it's interesting
22:56:38EXetoCis the callback to blame?
22:58:14flaviuThere are other errors, maybe the compiler is getting confused
22:58:56dom96Araq: oh yeah. Did you ever tell me what the best way to improve async stack traces would be?
22:59:34Araqdom96: I can't remember
22:59:52dom96well, what is the best way?
23:00:05Araqdom96: I don't know
23:01:18def-dom96: can't you disable stack trace creation at all these cb calls?
23:01:44flaviudom96: What about rethrowing the exception?
23:01:50flaviuThat's that Java does
23:01:58dom96def-: I can but that would just remove information.
23:02:14dom96flaviu: That's what I do as well.
23:02:35EXetoCso, reduce repetitions? and show a count of course
23:03:05flaviuJava's exception rethrowing is interesting: It changes the display order of the stack frames.
23:03:15*enquora quit (Quit: enquora)
23:04:21*HakanD quit (Quit: Be back later ...)
23:05:47keyle"That's what Java does" is probably the worst suggestion one can make
23:06:05keyle:)
23:07:34EXetoChow come :p
23:07:46flaviukeyle: Java doesn't do everything wrong, it'd be quite nice if it had user-defined value types.
23:07:54*gour quit (Quit: Leaving)
23:08:59Araqand typedefs. and proper higher order functions. and some sort of sum type. and bitsets. and a macro system.
23:09:24Araqand perhaps some form of coroutines.
23:09:41keyleI deal with java exceptions every day, I get shivers when I hear suggestions of doing it like Java.
23:09:42flaviuAraq: It sort of has macros, Java 8 has "good enough" higher order functions. Value types open the door to bitsets.
23:10:46Araqand then you only need to get rid of reflection entirely because it makes it unusable for embedded development
23:11:06Araqor the covariance for arrays misfeature
23:11:53flaviudom96: Did you have fun wrapping openssl? I'm not :/
23:12:18dom96flaviu: Why are you rewrapping it?
23:12:27flaviudom96: Your wrapper is incomplete.
23:13:43*alexruf quit (Quit: Textual IRC Client: www.textualapp.com)
23:13:59Araqa non-broken switch statement would also be nice, for those of us who know that dynamic dispatch doesn't replace it nor should it.
23:15:43Araqand then you only have to throw away the entire standard library. :-)
23:16:12flaviuAraq: The java standard library is excellent IMO
23:16:39*skyfex_ quit (Quit: (null))
23:17:46*kniteli quit (Ping timeout: 264 seconds)
23:18:28Araqnew BufferedReader(new Stream(new File()))
23:18:44flaviuLooks good to me.
23:19:20AraqC does it with a simple function call.
23:19:36Araqa single function call.
23:22:53EXetoCthat provides the exact same functionality?
23:23:14Araqnot quite. it's much faster too.
23:23:58*tinAndi quit (Quit: ChatZilla 0.9.91.1 [Firefox 34.0/20141125180439])
23:24:18Mat4can someone please explain to me why that example is excellent and how this lead to efficiency in terms of CPU and memory usage ?
23:25:05EXetoCmaximum speed is rarely needed
23:25:10*renesac_ quit (Ping timeout: 246 seconds)
23:25:16EXetoCfor every aspect of a program that is
23:26:18Mat4yes, probably energy consumption is however
23:27:37*renesac joined #nim
23:29:53*kniteli joined #nim
23:40:19*CARAM__ quit (Remote host closed the connection)
23:40:20*endou______ quit (Remote host closed the connection)
23:40:49*Demon_Fox joined #nim
23:42:05*JinShil joined #nim
23:46:02*Puffin joined #nim
23:46:48*Puffin is now known as BitPuffin
23:54:50*atomic-hedgehog joined #nim
23:55:55renesachttps://github.com/nim-lang <-- this still uses nimrod-lang.org link
23:56:45dom96fixed
23:59:08Araqflaviu: btw I made the DSL easier
23:59:41Araq<> stands for "emit template type"
23:59:52Araq() for "emit remaining parameters"