<< 23-03-2015 >>

00:01:21*kjo quit (Quit: Leaving.)
00:07:34*Trustable quit (Remote host closed the connection)
00:11:24*Matthias247 quit (Read error: Connection reset by peer)
00:19:52*irrequietus_ quit ()
00:20:14*johnsoft quit (Ping timeout: 256 seconds)
00:20:30*johnsoft joined #nim
00:21:22*mwbrown joined #nim
00:21:45*filwit quit (Ping timeout: 265 seconds)
00:21:53*EXetoC quit (Remote host closed the connection)
00:26:34*rzzz joined #nim
00:26:51*EXetoC joined #nim
00:31:09*rzzz quit (Ping timeout: 252 seconds)
00:33:42dhasenanLooks like you have to define a nimble or babel package to get them to behave.
00:44:14*dashed quit (Quit: Connection closed for inactivity)
00:59:09*reem_ joined #nim
00:59:45*reem quit (Read error: Connection reset by peer)
01:16:35EXetoCyeah
01:19:19*fizzbooze joined #nim
01:23:09*johnsoft quit (Ping timeout: 264 seconds)
01:23:59*johnsoft joined #nim
01:26:25*rzzz joined #nim
01:28:26*reem_ is now known as reem
01:30:55*rzzz quit (Ping timeout: 252 seconds)
01:54:50fowlcan two modules have the same name? hopefully not
02:04:23EXetoCfowl: some two modules are bound to share the same name so I think it should work. making the names unique by renaming generates a linker error though
02:05:02EXetoC"import a.a as a_a" is a little awkward though, but I guess it could be turned into a convention
02:06:51EXetoCit's like re-inventing hierarchies
02:12:12*darkf joined #nim
02:21:00fowla/a ends up as a_a.c and a/b ends up as a_b.c
02:21:13fowler b/a is b_c.c
02:21:32fowldoesnt it?
02:24:10EXetoCfowl: no, I just get a.c and a.o, but I probably need to add package files
02:26:19*rzzz joined #nim
02:27:39fowlEXetoC, if making it a babel package solves it then it really isnt a problem
02:30:25EXetoCfowl: are you referring to the linker issue? and yes that does it
02:31:13*rzzz quit (Ping timeout: 250 seconds)
02:34:06EXetoCI would prefer it if we wouldn't have to simulate hierarchies, but I find it easy to deal with. it would be nice to have the option of qualifying symbols with additional path components though, if necessary to make the code more clear or simply to have the ability to resolve collisions without renaming
02:35:12EXetoCnot that two modules names can have the same name anyway, regardless of whether or not it's later referred to by name
02:35:24EXetoCtime for another forum discussion
03:07:08*fizzbooze quit (Ping timeout: 252 seconds)
03:19:15*gsingh93 joined #nim
03:20:56*TEttinger joined #nim
03:25:41*mwbrown quit (Ping timeout: 256 seconds)
04:49:57*bogo joined #nim
04:54:43*bogo quit (Ping timeout: 246 seconds)
05:07:21*rzzz joined #nim
05:11:22*reem quit (Remote host closed the connection)
05:48:26*reem joined #nim
06:20:02*gsingh93 quit (Ping timeout: 272 seconds)
06:20:30*bjz joined #nim
06:25:00*reem quit (Remote host closed the connection)
06:34:18*gsingh93 joined #nim
06:36:18*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
06:39:03*reem joined #nim
06:51:46*reem quit (Remote host closed the connection)
06:59:15*Demon_Fox joined #nim
07:03:00*k1i quit (Ping timeout: 245 seconds)
07:04:09*k1i joined #nim
07:05:34*reem joined #nim
07:10:53*reem quit (Remote host closed the connection)
07:25:27*gsingh93 quit (Ping timeout: 250 seconds)
07:25:56*HakanD__ joined #nim
07:29:25*reem joined #nim
07:33:32*HakanD___ joined #nim
07:33:32*HakanD__ quit (Read error: Connection reset by peer)
07:36:58*bjz joined #nim
07:38:23*reem quit (Remote host closed the connection)
07:43:23*reem joined #nim
07:50:53*bjz quit (Ping timeout: 246 seconds)
07:51:39*reem quit (Remote host closed the connection)
07:56:37*reem joined #nim
07:58:08*Ven joined #nim
08:01:47*Ven quit (Read error: Connection reset by peer)
08:02:40*HakanD____ joined #nim
08:02:47*HakanD___ quit (Read error: Connection reset by peer)
08:03:15*Ven joined #nim
08:06:21*gokr joined #nim
08:07:59*NimBot joined #nim
08:09:35*Demon_Fox quit (Quit: Leaving)
08:16:59*bjz joined #nim
08:17:23*HakanD____ quit (Read error: Connection reset by peer)
08:17:51*HakanD____ joined #nim
08:26:33*Ven quit (Ping timeout: 250 seconds)
08:32:42*Trustable joined #nim
08:36:37*BlaXpirit joined #nim
08:42:02BlaXpiritapparently ref types don't work in VM
08:44:31BlaXpirit.eval type T = ref object; proc n(t: T): int = 5; const b = T().n; echo b
08:44:33MimbusBlaXpirit: 5
08:44:49BlaXpiritbut in this code it does work??
08:44:51*HakanD_____ joined #nim
08:46:21*irrequietus joined #nim
08:47:59*HakanD____ quit (Ping timeout: 246 seconds)
08:51:09*bcinman quit (Quit: My Mac has gone to sleep. ZZZzzz…)
09:00:03*dtscode quit (Quit: Leaving)
09:10:05*Ven joined #nim
09:22:25*davidhq joined #nim
09:22:38*ddum joined #nim
09:23:14ddumHi, I am trying to build character.nim in urhonimo/examples
09:23:32ddumBut it fails with: urhonimo/examples/nimcache/stdlib_times.cpp:12:8: error: ‘tzset’ was not declared in this scope
09:26:20*davidhq quit (Read error: Connection reset by peer)
09:28:19*BlaXpirit quit (Read error: Connection reset by peer)
09:29:06*BlaXpirit joined #nim
09:37:07*rzzz quit (Ping timeout: 252 seconds)
09:41:08LoneTechI managed to get a LED blinking on an msp430. next step will be detecting a button using an interrupt, I think.
09:41:45LoneTechthen on to the complicated mess.. voltage scaling, clock system setup, usb
09:44:50*Shoozza quit (Ping timeout: 265 seconds)
09:49:21gokrddum: Ehm... sounds familiar. Are you using devel branch of nim?
09:50:18ddumYes, updated today: Nim Compiler Version 0.10.3 (2015-03-23) [Linux: amd64]
09:51:37ddumlibc6 installed version: 2.19-0ubuntu6.6
09:51:49*reem quit (Remote host closed the connection)
09:52:57gokrddum: Ok, let me check
09:53:11ddumthank you!
09:53:20*reem joined #nim
09:54:11*Shoozza joined #nim
09:55:10gokrddum: Just pulled and did koch boot on nim, then built character.nim fine here. Ubuntu.
09:56:31ddumDoes your: /usr/include/x86_64-linux-gnu/sys/time.h declare tzset() function? Mine doesnt
09:57:01def-Hm, in the times module it imports sys/time.h but according to tzset's manpage on Linux you just need time.h
09:57:03gokrNo hit with grep there
09:57:57def-I think the tzset is quite new and was introduced for some mac os x problems
09:58:16LoneTechtzset is in time.h per posix, judging by the ifdef in there
09:58:55LoneTechfreebsd and macosx also list it in time.h per man pages
09:59:10gokrI guess related: https://github.com/Araq/Nim/issues/2301
09:59:14def-I get the same error
10:00:44def-<times.h> instead of <sys/times.h> fixes it, I'll make a PR
10:04:36*rzzz joined #nim
10:04:36ddumworks :)
10:09:00*rzzz quit (Ping timeout: 256 seconds)
10:09:03*ddum left #nim (#nim)
10:14:10*arnetheduck joined #nim
10:15:01*ddum joined #nim
10:15:14*ddum left #nim (#nim)
10:17:13*ddum joined #nim
10:17:45*ddum quit (Quit: Leaving.)
10:18:30*reem quit (Remote host closed the connection)
11:22:14*banister joined #nim
11:38:54*john_smith joined #nim
11:45:01john_smithHello, everyone! I wrote a translation of java program for binarytrees benchmark from benchmarksgame.alioth.debian.org. http://pastebin.com/mxkrS6Xw here's the source code. The problem is that java program runs in 6.3s +- 0.5s. My finishes in 1:03m +- 2s. Any suggestions on how to improve performance?
11:45:59LoneTechthat reminds me I haven't checked how to profile nim programs
11:47:43LoneTechjohn_smith: why are you calling new(left) before assigning a value to left?
11:50:06john_smithWell, I needed to do this for result so I thought that I need to do this for left and right as well.
11:50:48LoneTechno, the problem was result was nil. since you're about to assign left and right, that doesn't matter.
11:51:18john_smithOh, right. Thanks.
11:53:30LoneTechif bottomUpTree returned a TreeNode rather than a TreeNodeRef you wouldn't have to do that new either. I'm still new to nim, so I could miss things
11:55:02VenI'm wondering. nim-js is a different backend, right? But maybe nim->c->llvm->emscripten would have worked?
11:55:42qwrjohn_smith: it might be faster to use tuple instead of object
11:56:00def-Ven: from what I gathered you can indeed use emscripten with Nim
11:58:56*wb quit (Ping timeout: 256 seconds)
12:01:32def-john_smith: The winning C implementation on Benchmarks Game is so cheating. In the rules it says "Please don't implement your own custom memory pool or free list." but they do just that
12:01:38def-This looks like an interesting benchmark for GC
12:17:40LoneTechyes, the winning C entry is a test of Apache runtime memory pools, not the standard library malloc
12:18:59LoneTechI guess the one at 11x is the reference version
12:19:58LoneTechalso, I suspect the stretch tree should be deallocated earlier; it is a specific step in the spec
12:23:33*wb joined #nim
12:23:43LoneTechdoing a full collect after that check makes no speed difference though. java's advantage may be from a more advanced gc strategy
12:25:48*sepisoad joined #nim
12:27:02sepisoadwhy c2nim excludes static class members but includes private and protected members
12:28:31LoneTechbecause static class members aren't part of the objects, I would guess
12:30:10LoneTechI didn't even know it tried to process C++
12:39:16Venis there some kind of parsing module for nim? i.e. with EBNF
12:41:15LoneTechperhaps pegs? http://nim-lang.org/pegs.html
12:41:58VenLoneTech: will look into it ty
12:44:43EXetoCdoes 'nimble build' not fail for anyone else? either it doesn't find the 'nim' dep or it doesn't do anything related to building
12:48:37*mwbrown joined #nim
12:51:42*a5i joined #nim
12:52:01LoneTechthe pegs documentation leaves something to be desired, though. it claims a regular expression does not behave as intended, but didn't declare the intent; the only conclusion is that the RE is misconstructed, not that REs as such are weak.
12:52:39LoneTechthe difference it describes does not make REs non-deterministic
12:56:05*john_smith left #nim (#nim)
12:56:16qwrRE is deterministic for detecting whether there is match or not
12:57:22qwrbut there can be different ways how parts of RE are applied to the input sequence, so the captures from RE match are implementation specific
12:57:53EXetoCLoneTech: I wouldn't mind using only PEG, but that module does indeed need some work
12:58:37LoneTechlike an example of how to use it to build an AST.
13:03:07EXetoCI suspect that you need a ton of separate grammars becuase of the fact that it generates a 1-d array, and so things become ambiguous when repetition is involved
13:03:37EXetoCmore than one repetition to be exact
13:03:43*saml_ joined #nim
13:03:59LoneTechyes. I mean a parser generator capable of recursive processing would be of use, and the pegs module isn't that currently
13:05:04LoneTechthere are parser modules for json, csv, sql, xml, and rst in the library. but they don't seem to build on this
13:06:16*sepisoad quit (Quit: Leaving)
13:07:58EXetoCI like imperative parsing. it would be nice to have equivalent PEGs though
13:10:09LoneTechI think Parsec might be a good example to refer to
13:17:43*sepisoad joined #nim
13:33:59*TEttinger quit (Ping timeout: 245 seconds)
13:35:05*mpthrapp_ joined #nim
13:35:58*mwbrown quit (Ping timeout: 255 seconds)
13:56:24*sepisoad quit (Quit: Leaving)
13:59:26*xet7 quit (Ping timeout: 252 seconds)
14:02:08*xet7 joined #nim
14:04:51*rzzz joined #nim
14:13:25EXetoCAraq: a.type(b) worked before, but now it's expanded to type(a, b). is it not supposed to work? if so, can it still be done in a single statement?
14:16:47EXetoCtype(b)(a) does work.
14:17:51*darkf quit (Quit: Leaving)
14:19:34BlaXpirito.o
14:20:12BlaXpirittype(a, b) makes no sense
14:20:32*jholland joined #nim
14:22:25*alex99 quit (Ping timeout: 246 seconds)
14:23:06EXetoCBlaXpirit: keep in mind that 'type' is defined in the system module: "proc `type`*(x: expr): typeDesc {.magic: "TypeOf", noSideEffect.}"
14:23:40BlaXpiritah i get what you mean by this
14:23:44EXetoCand so the method call syntax applies here too
14:24:00BlaXpiritwell this is abuse of method call syntax, i'm glad it fails :|
14:28:30EXetoCI guess it's more consistent now
14:32:46LoneTechI've had worse pains writing interrupt handlers: https://github.com/lonetech/nim-msp430/blob/master/blink.nim
14:33:42*kjo1 joined #nim
14:34:12LoneTechit will be interesting to write a usb device stack in nim
14:36:13*BitPuffin joined #nim
14:41:07*untitaker quit (Ping timeout: 265 seconds)
14:45:49*untitaker joined #nim
14:54:24*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:54:50*dashed joined #nim
14:59:09xxxany good way to cross-compile for linux from mac? Would love to use the fact that nim deploys statically linked binaries to make running stuff remotely/across a cluster easier
14:59:39*Ven joined #nim
15:00:26tstmI'd use a VM. But perhaps there are some cross compiling options as well..
15:00:57xxxeh, yeah, if a vm is the only choice that's trivial, was just wondering if there was one less hoop I could jump through
15:02:50dhasenanIs there some way for me to bring up a local copy of the Nim website? I have some doc changes that I'd like to test before submitting a pull request.
15:02:54LoneTechxxx: you could compile with --genScript then use the generated script to compile the C version on the target machine
15:03:04def-xxx: if you can figure out how to cross-compile C for linux, then it works the same, see this: http://nim-lang.org/nimc.html#cross-compilation
15:03:13xxxLoneTech: that's probably the pest solution, thanks! forgot that would be worth trying ..
15:04:30*xet7 quit (Quit: Leaving)
15:15:14*gokr quit (Ping timeout: 245 seconds)
15:22:27*mpthrapp__ joined #nim
15:23:05*mpthrapp_ quit (Ping timeout: 246 seconds)
15:28:09*arnetheduck quit (Ping timeout: 245 seconds)
15:28:55*BitPuffin quit (Ping timeout: 255 seconds)
15:31:36*BitPuffin joined #nim
15:34:38*mpthrapp__ quit (Ping timeout: 246 seconds)
15:36:24*mpthrapp_ joined #nim
15:42:01*gmpreussner|work joined #nim
15:46:14*vendethiel quit (Ping timeout: 272 seconds)
15:48:48*vendethiel joined #nim
15:56:11*gokr joined #nim
15:56:14*gokr quit (Read error: Connection reset by peer)
15:57:38*saml_ quit (Ping timeout: 272 seconds)
16:01:15*milosn quit (Read error: Connection reset by peer)
16:01:58*gokr joined #nim
16:04:01*rzzz quit (Ping timeout: 264 seconds)
16:07:18*milosn joined #nim
16:10:12*pregressive joined #nim
16:18:43*HakanD_____ quit (Quit: Be back later ...)
16:19:30*wink-s joined #nim
16:24:32*HakanD_____ joined #nim
16:32:23*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:33:28*HakanD_____ quit (Quit: Be back later ...)
16:35:24*rzzz joined #nim
16:39:34*bcinman joined #nim
16:40:26*Ven joined #nim
16:43:58*shodan45 joined #nim
16:45:07*rzzz1 joined #nim
16:49:38*itPuffinB joined #nim
16:52:34*BitPuffin quit (Ping timeout: 264 seconds)
16:53:41*itPuffinB is now known as BitPuffin
16:54:16*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:59:08*gokr quit (Quit: Leaving.)
16:59:41*vendethiel quit (Ping timeout: 252 seconds)
17:02:57*vendethiel joined #nim
17:03:38*brson joined #nim
17:05:56*Demon_Fox joined #nim
17:13:22*itPuffinB joined #nim
17:16:59*BitPuffin quit (Ping timeout: 256 seconds)
17:19:06*itPuffinB is now known as BitPuffin
17:23:59*vendethiel quit (Ping timeout: 245 seconds)
17:25:16*gmpreussner|work quit (Read error: Connection reset by peer)
17:25:22*gmpreussner|work joined #nim
17:25:32*vendethiel joined #nim
17:29:01*gmpreussner|work quit (Read error: Connection reset by peer)
17:30:00*gmpreussner|work joined #nim
17:31:04*matkuki joined #nim
17:33:10*a5i quit (Quit: Connection closed for inactivity)
17:33:58*dtscode joined #nim
17:35:11*Matthias247 joined #nim
17:37:53*gmpreussner|work quit (Read error: Connection reset by peer)
17:38:16*gmpreussner|work joined #nim
17:48:50*gmpreussner|work quit (Ping timeout: 244 seconds)
17:49:38*gmpreussner|work joined #nim
17:51:15*dtscode_ joined #nim
17:51:46*dtscode_ quit (Client Quit)
17:58:23*gokr joined #nim
17:59:01*gsingh93 joined #nim
18:18:48*BitPuffin quit (Ping timeout: 244 seconds)
18:21:36*UberLambda joined #nim
18:45:18*dtscode- joined #nim
18:45:48*dtscode quit (Quit: Leaving)
18:45:58*dtscode- is now known as dtscode
18:48:57*dtscode quit (Quit: ZNC - 1.6.0 - http://znc.in)
18:50:24*dtscode joined #nim
18:53:42*Etheco joined #nim
19:04:19*reactormonk quit (*.net *.split)
19:04:29*zama quit (*.net *.split)
19:04:36*reactormonk joined #nim
19:04:54*zama joined #nim
19:12:30gokrAnyone seen filwit? He promised me a paper cutout crown ;)
19:13:33*bcinman quit (Quit: My Mac has gone to sleep. ZZZzzz…)
19:14:27*bcinman joined #nim
19:14:51BlaXpiritgokr, it's basically gear-shaped :|
19:15:10gokrWell, he was working on it for me
19:15:34EXetoCwhy not metal?
19:15:46gokrHehe
19:15:51BlaXpiritwa
19:23:55*Demon_Fox quit (Quit: Leaving)
19:34:16*wink-s quit (Ping timeout: 246 seconds)
19:34:21*HakanD_____ joined #nim
19:37:30*HakanD_____ quit (Read error: Connection reset by peer)
19:37:36*HakanD______ joined #nim
19:38:32BlaXpiritgokr, lol http://i.imgur.com/nwrIhtF.png
19:39:02BlaXpiritit's probably wrong
19:39:23gokrHehe, well, I think filwit was talking about a two piece thing, in color etc
19:39:24*filwit joined #nim
19:39:31gokrAha! When you speak of the devil
19:39:31BlaXpiritoh yeah, and it's thinner on the left
19:39:35BlaXpiritconsider this a joke
19:39:38BlaXpirit:|
19:39:41gokr:)
19:40:07gokrfilwit: I am soon in need of a crown ;)
19:40:25filwitgokr: oh right!
19:40:32filwitgokr: thanks for reminding me
19:41:04gokrNo problem
19:43:43*matkuki quit (Quit: ChatZilla 0.9.91.1 [Firefox 36.0.4/20150320202338])
19:44:19*bogo joined #nim
19:45:11*reem joined #nim
19:53:38*UberLambda quit (Quit: Leaving the Matrix)
19:56:50*kjo1 quit (Quit: Leaving.)
19:59:23*bogo left #nim (#nim)
20:00:48*Trustable quit (Quit: Leaving)
20:18:54*reem quit (Read error: Connection reset by peer)
20:19:39*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
20:22:35*reem joined #nim
20:25:36*bcinman quit (Quit: My Mac has gone to sleep. ZZZzzz…)
20:25:37*ajit joined #nim
20:25:59*bcinman joined #nim
20:26:48*ajit quit (Client Quit)
20:38:22fowlfindExe should list .cmd files on windows, yes?
20:38:52fowltrying to use it for ~/.nimble/bin is worthless
20:51:12*BlaXpirit_ joined #nim
20:52:25flaviuwhy would there be a findExe in the stdlib?
20:58:39*reem quit (Remote host closed the connection)
20:58:51fowli assume os and related modules exist so we can claim some kind of portability
21:03:20BlaXpirit_i don't like tables api
21:03:25flaviuwell, instead of putting a findExe in the stdlib, I'd add directory map+filter.
21:03:31BlaXpirit_look at this https://gist.github.com/rbehrends/98ebf2cd893d203fb38e
21:03:46BlaXpirit_it contains 3 table lookups when only 1 is really needed
21:04:32BlaXpirit_well sometimes adding new item is also needed, so that would be 2
21:04:36fowlis that how you would solve it
21:05:15fowlmap all files on $PATH to a list then filter it
21:06:23flaviuDoesn't findExe work the same way?
21:06:41*saml_ joined #nim
21:09:03fowlno, mapping means creating a list and filtering is reducing the list
21:11:39*BlaXpirit_ quit (Quit: Quit Konversation)
21:18:53*elbow joined #nim
21:18:55*elbow_ joined #nim
21:18:59*elbow_ quit (Remote host closed the connection)
21:25:59*mpthrapp_ quit (Remote host closed the connection)
21:36:02*bretthart joined #nim
21:36:29brettharti'm looking for some examples using spawn and parallel, where are they?
21:39:29def-bretthart: I've only seen http://nim-lang.org/manual.html#parallel-spawn and https://github.com/Araq/Nim/tree/devel/tests/parallel
21:40:21*dtscode quit (Quit: ZNC - 1.6.0 - http://znc.in)
21:41:23*dtscode joined #nim
21:42:53bretthartdef-, any idea why so few examples?
21:43:27def-people don't write much parallel code in Nim yet or don't put it online
21:44:02bretthartthese examples are in the devel branch, any idea if they work in master?
21:44:28def-Not sure, recently a few bugs in parallel were fixed
21:46:33*fizzbooze joined #nim
21:48:59*bretthart quit (Ping timeout: 256 seconds)
21:50:12*enquora joined #nim
21:56:03*reem joined #nim
22:30:46*johnsoft quit (Ping timeout: 256 seconds)
22:31:10*johnsoft joined #nim
22:37:01*johnsoft quit (Ping timeout: 252 seconds)
22:37:29*johnsoft joined #nim
22:44:35*reem quit (Remote host closed the connection)
22:47:19*pregressive quit ()
22:52:39*TEttinger joined #nim
22:55:52*fizzbooze quit (Ping timeout: 252 seconds)
23:14:14*dashed quit (Quit: Connection closed for inactivity)
23:20:31*Demon_Fox joined #nim
23:22:43*enquora quit (Quit: enquora)
23:22:51*flaviu quit (Remote host closed the connection)
23:23:08*flaviu joined #nim
23:23:11*mwbrown joined #nim
23:24:28*kjo1 joined #nim
23:28:18*Mandar joined #nim
23:29:58*silven quit (Ping timeout: 255 seconds)
23:42:40*BlaXpirit quit (Quit: Quit Konversation)
23:50:18*Woflox joined #nim