<< 01-02-2014 >>

00:03:21EXetoCreactormonk: same result when introducing an additional parenthesis pair?
00:12:08dom96Varriount: I am now at your disposal until I fall asleep :P
00:12:14dom96Varriount: Sorry for being away for so long.
00:12:39dom96Varriount: Just read through the logs: it seems that you arrived at the exact same point that I was at? I.e. it works when you alloc0 the TOverlapped struct.
00:12:48dom96I'm still unsure about the reason for this?
00:13:07dom96Maybe I missed it in the logs.
00:13:20EXetoCdom96: is my 2-line jester patch good?
00:13:36dom96EXetoC: the {.nimcall.} -> {.closure.}?
00:14:57dom96EXetoC: I still need to review the full implications of this change.
00:15:37dom96Varriount: Have you read this? https://github.com/nimrod-code/nimbuild/blob/master/structure.markdown
00:16:43dom96Varriount: btw I am willing to help you understand the builder if you wish.
00:17:35*darkf joined #nimrod
00:21:34EXetoCdom96: anything specific?
00:22:43*LordAndrew joined #nimrod
00:24:41EXetoCnevermind
00:28:34*BitPuffin joined #nimrod
00:34:26*BitPuffin quit (Ping timeout: 264 seconds)
00:59:15*brihat quit (Ping timeout: 252 seconds)
01:46:45VarriountSo what's this talk of procedure call unification?
01:51:55*aruniiird joined #nimrod
01:57:02EXetoCVarriount: these will be callable using the same syntax: "proc init(var x: T)" and "proc init(): T". something like that
02:15:16EXetoC"var x = init()" -> "var x: T; init(x); x (discardable)"? We might find out when he blogs about it
02:15:48VarriountI like reading Araq's blog posts, they are quite informative.
02:18:06EXetoCbut I wonder if it doesn't need to be more special than that, because now you can't use 'let', right?
02:18:53VarriountHuh?
02:29:18*fowl quit (Quit: Leaving)
02:32:29*DAddYE quit (Remote host closed the connection)
02:33:02*DAddYE joined #nimrod
02:37:39*DAddYE quit (Ping timeout: 260 seconds)
02:48:54EXetoCVarriount: I'm trying to figure out if a constructor feature is necessary
02:49:20EXetoCwhat else? replace var with let in that imaginary rewrite and it won't work
02:54:42*brihat joined #nimrod
03:11:23*fowl joined #nimrod
03:13:02*aruniiird quit (Ping timeout: 253 seconds)
03:18:41OrionPKhola gents
03:19:14EXetoClo
03:21:45OrionPKwhat's new
03:24:26EXetoCnot much
03:49:26*brson quit (Quit: leaving)
04:00:31*aruniiird joined #nimrod
04:21:42reactormonkseq[set[TEdge]] gives me Error: ordinal type expected
04:22:46VarriountWhat is TEdge?
04:23:14reactormonk TEdge = object of TObject
04:23:15*delian66 quit (Read error: Operation timed out)
04:23:53Varriountreactormonk: Built in sets can only contain ordinal values. Use the sets module for set objects that can hold more.
04:24:47reactormonk... duh
04:24:56Varriount;3
04:25:49VarriountOh hi aruniiird
04:28:34Varriountreactormonk: I'm curious; if you don't mind me asking, what are you working on?
04:34:24*DAddYE joined #nimrod
04:39:27*DAddYE quit (Ping timeout: 272 seconds)
04:51:35*DAddYE joined #nimrod
04:59:44reactormonkVarriount, eve online PI stuff. Want to know which combination brings most money for the factories you need.
04:59:45*brson joined #nimrod
04:59:52reactormonks/PI/planetary interaction/
05:00:01reactormonkhow would you translate a seq[seq[T]] ?
05:00:10VarriountAh. That explains the need for product()
05:00:20reactormonkyup
05:00:20Varriountreactormonk: Translate it to what?
05:00:42reactormonkVarriount, ehh transpose
05:01:20VarriountWhat kind of transposition?
05:01:36*bbodi joined #nimrod
05:02:20reactormonkhttp://en.wikipedia.org/wiki/Transpose
05:02:41reactormonk@[@[1,2,3],@[4,5,6]] => @[@[1,4],@[2,5],@[3,6]]
05:02:56VarriountOh that.
05:03:00VarriountUse zip
05:03:33reactormonkzip?
05:04:07Varriounthttp://build.nimrod-lang.org/docs/sequtils.html
05:04:33reactormonkhow does zip help here?
05:05:00Varriountreactormonk: Zip the two sequences inside the containing seq?
05:05:17reactormonkVarriount, nope, transpose is for an undefined number of sequences
05:05:36VarriountStill easy. Are they all the same length?
05:06:46reactormonkyup
05:08:38Varriountreactormonk: Do you want it to be an iterator?
05:08:55reactormonkVarriount, why not, but not needed
05:09:07reactormonkI'll just warp an accumulateResult around it
05:09:18Varriount"warp" sounds cool
05:09:39reactormonktoo much eve
05:14:41Varriountreactormonk: https://gist.github.com/Varriount/8748313
05:15:44VarriountIt says something about nimrod, that I can come up with a generic transposition iterator in less than 30 minutes, with only one file, less than 15 lines of code
05:16:00VarriountYou'd never have it that easy in C++
05:16:28Varriountreactormonk: I used repr() because I'm too lazy to import sequtils.
05:19:48Varriountreactormonk?
05:20:22EXetoCI don't know what for. is this what you want? "when false: proc `$`*[T](a: openArray[T]): string"
05:20:51EXetoCit caused some problems, and has been disabled for ages
05:21:46Varriountno, I want " proc `$`*[T](a: seq[T]): string
05:22:14VarriountBut repr achieves what I want, plus I get an interesting pointer address. :3
05:24:50*[1]Endy joined #nimrod
05:24:59EXetoCopenarray means any array or sequence
05:26:00VarriountEXetoC: What kind of problems did it cause?
05:26:48*[2]Endy joined #nimrod
05:27:20VarriountHi [1]Endy
05:28:21VarriountEXetoC: Do you know of any easy way to iterate over the fields of an object, and get their types?
05:29:07*[1]Endy quit (Ping timeout: 252 seconds)
05:35:03*[1]Endy joined #nimrod
05:38:15*[2]Endy quit (Ping timeout: 260 seconds)
05:40:54EXetoCVarriount: I can never remember
05:41:02EXetoCVarriount: get the types? system.fields maybe
05:41:37VarriountI've tried that, I just get an "Error: expression 'x' has no type (or is ambiguous)"
05:42:01VarriountMaybe it's because I'm using it in a template. :/
05:51:45EXetoCcould be the documented bug
06:05:31*DAddYE quit (Remote host closed the connection)
06:09:21*xtagon quit (Ping timeout: 252 seconds)
06:18:53*Demos quit (Ping timeout: 245 seconds)
06:43:16*DAddYE joined #nimrod
07:12:14*aruniiird quit (Ping timeout: 264 seconds)
07:15:25*delian66 joined #nimrod
07:16:14*[1]Endy quit (Quit: HydraIRC -> http://www.hydrairc.com <- Now with extra fish!)
07:23:55*aruniiird joined #nimrod
07:31:58*DAddYE quit (Remote host closed the connection)
07:32:25*DAddYE joined #nimrod
07:33:20delian66I'm trying to build nimrod 0.9.2 from the .zip archive on the download page on Ubuntu 13.04, but I'm getting an error: http://pastebin.com/VqinXfqY
07:33:48delian66is this still supported, or should I instead just try the build from github thing ?
07:34:36*DAddYE_ joined #nimrod
07:34:56*DAddYE quit (Read error: Connection reset by peer)
07:35:33fowldelian66, known error with ubuntu
07:35:51fowldelian66, use the latest from github
07:35:55delian66btw, on Ubuntu, sh is a link to dash, and the build script should be run with bash
07:35:58delian66ok, 10x
07:36:48*DAddYE_ quit (Remote host closed the connection)
07:37:15*DAddYE joined #nimrod
07:41:29*DAddYE quit (Ping timeout: 252 seconds)
07:57:07*ddl_smurf joined #nimrod
08:07:33*DAddYE joined #nimrod
08:10:30delian66yay ... success !
08:10:34delian66Nimrod Compiler Version 0.9.3 (2014-02-01) [Linux: amd64]
08:10:35delian66:-)
08:44:38*aruniiird quit (Ping timeout: 264 seconds)
08:45:16*LordAndrew quit (Quit: Out.)
08:57:41*aruniiird joined #nimrod
08:58:19*io2 joined #nimrod
09:09:14*XAMPP_ joined #nimrod
09:11:34*XAMPP quit (Ping timeout: 260 seconds)
09:21:26*DAddYE quit (Remote host closed the connection)
09:21:52*DAddYE joined #nimrod
09:26:34*JStoker quit (Killed (hobana.freenode.net (Nickname regained by services)))
09:26:44*JStoker joined #nimrod
09:26:59*DAddYE quit (Ping timeout: 272 seconds)
09:30:28*brihat quit (*.net *.split)
09:30:28*EXetoC quit (*.net *.split)
09:30:29*zielmicha8 quit (*.net *.split)
09:30:29*[Pete_27] quit (*.net *.split)
09:30:30*iNode000 quit (*.net *.split)
09:34:36*brihat joined #nimrod
09:34:36*EXetoC joined #nimrod
09:34:36*iNode000 joined #nimrod
09:34:36*zielmicha8 joined #nimrod
09:34:36*[Pete_27] joined #nimrod
09:43:45*aruniiird quit (Ping timeout: 245 seconds)
09:53:12*BitPuffin joined #nimrod
09:56:47*aruniiird joined #nimrod
10:00:49*io2 quit (Ping timeout: 252 seconds)
10:19:05*_davidk_ joined #nimrod
10:19:59*shodan45 quit (Ping timeout: 240 seconds)
10:22:17*barry joined #nimrod
10:25:21Araqhi barry welcome
10:25:30barryhello Araq
10:25:44Araqdelian66: the build script is supposed to be posix style, so whatever 'sh' points to should be fine
10:26:03Araqhi _davidk_ welcome
10:28:55delian66Araq: well, the build script did not work under sh linked to dash, I suppose there is some bashism in it, because it run fine, when I invoke it with bash; will try to determine what exactly messed it later today.
10:29:13Araqgreat, thanks
10:31:55*ninjashogun joined #nimrod
10:32:10ninjashogunhey there
10:32:29ninjashogundoes, uh, 'girvo' hang out here?
10:35:23*aruniiird quit (Ping timeout: 265 seconds)
10:35:37Araqhi ninjashogun
10:35:56Araqyes, though I haven't seen him for a while
10:36:05Araq!seeen girvo
10:36:14AraqNimBot: !seen girvo
10:36:33*Araq can't remember the syntax ...
10:36:45Araq!seen girvo
10:36:45NimBotgirvo was last seen on Mon Jan 13 14:48:32 2014 quitting with message: Quit: Leaving
10:41:22Araqninjashogun: any idea what happened to him?
10:45:54ninjashogunah okay
10:46:07ninjashogunI don't know, he justmentioned this channel on Hacker News
11:01:13*brson quit (Ping timeout: 252 seconds)
11:02:49*brson joined #nimrod
11:14:18*brson quit (Ping timeout: 245 seconds)
11:28:32*resure joined #nimrod
11:34:54*luyang joined #nimrod
11:36:32*clsterfks joined #nimrod
11:39:22*NimBot joined #nimrod
11:47:01*ninjashogun quit (Read error: Connection reset by peer)
11:47:31*ninjashogun joined #nimrod
11:50:14*[1]Endy joined #nimrod
11:57:23*luyang quit (Quit: Leaving.)
11:58:37*ninjashogun quit (Ping timeout: 272 seconds)
12:00:41Araqhi resure welcome
12:03:51*luyang joined #nimrod
12:03:51*luyang quit (Changing host)
12:03:51*luyang joined #nimrod
12:04:07luyangwhat's up
12:05:22Araqhi luyang welcome
12:05:43Araqnot much "up", fixing bugs for 0.9.4
12:05:50*vendethiel quit (Read error: Connection reset by peer)
12:25:06*vendethiel joined #nimrod
12:31:59*vendethiel quit (Ping timeout: 240 seconds)
12:32:27*vendethiel joined #nimrod
12:49:39*failover joined #nimrod
12:49:45*failover left #nimrod (#nimrod)
12:51:09*epsylon joined #nimrod
12:51:53*resure left #nimrod (#nimrod)
12:59:19*enurlyx joined #nimrod
13:00:36Araqhi epsylon welcome
13:04:02*luyang quit (Quit: Leaving.)
13:05:27enurlyxHi Araq
13:05:38enurlyxDo you have plans for a gui? Claro?
13:05:45enurlyxOr is someone else working on a gui?
13:06:05Araqfrom time to time I try to sell Claro but nobody is interested
13:06:35AraqUIs are complex, I guess we should wrap webkit or similar and use that ...
13:06:38enurlyxClaro source is in c?
13:06:52Araqyes
13:08:53Araqexhu is working on a native UI library but I don't know its status
13:09:28Araqit uses x11 or the winapi directly, I think
13:09:51enurlyxThat sounds good. I cant think of an CAD-App with WebKit
13:10:09Araqhe might even have a wayland port by now
13:11:34*darkf quit (Quit: Leaving)
13:12:04Araqenurlyx: steam uses webkit, I think
13:12:32Araqand in general these days most "software portals" are browser based
13:13:11dom96Indeed. Steam's UI uses libcef. Battle.net's too.
13:14:23*io2 joined #nimrod
13:16:14Araqoh yeah
13:16:27Araqwe should wrap that
13:16:39dom96Varriount already has.
13:16:52dom96I think it's untested though...
13:16:53Araqwhat? o.O
13:19:28AraqVarriount, dom96 just alloc0 and dealloc, no need to keep a seq of refs around
13:20:00*noam quit (Ping timeout: 245 seconds)
13:20:31dom96Ahh so my instinct was correct. Good.
13:21:12Araqbbl
13:23:05*randallsquared joined #nimrod
13:23:17dom96hello randallsquared
13:24:16*[2]Endy joined #nimrod
13:24:51randallsquaredHi dom96.
13:24:53enurlyxWhere can i find exhu's project?
13:25:00enurlyxWhat is outstanding about Claro?
13:25:21dom96enurlyx: https://bitbucket.org/exhu/paulina
13:26:55*[1]Endy quit (Ping timeout: 272 seconds)
13:29:16enurlyxDid you know a group at Microsoft works at a new Systemsprogramming language (M#)?
13:31:06*[1]Endy joined #nimrod
13:31:12*aruniiird joined #nimrod
13:34:51*[2]Endy quit (Ping timeout: 252 seconds)
13:39:49dom96enurlyx: I heard about it a while back. Haven't heard any news about it recently though.
13:42:46enurlyxYeah, not so much infos. I just wanted to mention.
13:44:51*aruniiird quit (Ping timeout: 265 seconds)
14:01:59bbodiHi all!
14:02:20dom96hi bbodi!
14:02:46bbodiA simple console application at startups consume 50 MB memory. What is the reason behind it? Is it configurable?
14:02:49bbodihi dom96!
14:04:20dom96Can I see your code?
14:05:00bbodiyes: echo GC_getStatistics()
14:05:02bbodi:D
14:05:13bbodithats the whole program
14:05:32bbodi"[GC] occupied memory: 40960"
14:05:51dom96Interesting. I have no idea heh.
14:22:10dom96Actually, I think that value is in bytes.
14:22:16bbodiyes it is
14:28:43reactormonkVarriount, sorry, went to sleep
14:29:45reactormonkVarriount, looks good. Araq, https://gist.github.com/Varriount/8748313 to sequtils?
14:31:14*decoa joined #nimrod
14:31:24reactormonkAraq, btw, what's the distinction between algorithm and sequtils?
14:31:25dom96hello decoa
14:31:44*decoa quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com ))
14:37:08NimBotnimrod-code/nimbuild master 04793c7 Dominik Picheta [+0 ±1 -0]: A single thread is now created removing the need for joinThreads.... 3 more lines
14:46:53reactormonkhttp://dpaste.com/1580454/ got this test failing - how do I annotate accumulateResult?
14:48:55reactormonkuhm, is an iterator first-class yet?
14:50:03reactormonkoh, it quite literally accumulate the result :-/
14:52:03dom96Perhaps you want sequtils.toSeq?
14:53:41*enurlyx quit (Quit: Leaving)
14:55:27*io2 quit (Ping timeout: 260 seconds)
14:56:54NimBotAraq/Nimrod devel ea08ebc Dominik Picheta [+0 ±1 -0]: Fixes wrong slurp path in tester.
15:07:27*ceptr joined #nimrod
15:08:45dom96hi ceptr
15:09:06ceptrhi dom96
15:11:05reactormonkdom96, most likely
15:19:08reactormonklib/pure/collections/sets.nim(132, 2) Error: internal error: for statement not eliminated
15:19:10reactormonkO.o
15:25:42*ahhdem joined #nimrod
15:25:46*ahhdem left #nimrod (#nimrod)
15:27:14Araqreactormonk: your PR is nice except that use unittest.nim for the test and this is not really supported by the tester
15:27:55reactormonkAraq, muh
15:28:43*panz53 joined #nimrod
15:28:47Araqdom96: what's the slurp path in the tester?
15:28:50Araqhi panz53 welcome
15:29:00Araqhow can it be wrong?
15:29:10dom96look at the diff
15:31:19Araqyou should remove tests/tester instead
15:31:29Araqand use the new tester
15:31:52reactormonkAraq, how complicated would it be to add unittest support to the tester?
15:32:47Araqnot very, but it sucks
15:32:57Araqunittest is a quite complex meta program itself
15:33:14Araqso I never know if I break the unittest module or the underlying test
15:33:24reactormonkhmmm
15:33:51reactormonkso I just should replace check with echo and go true/true/true/ etc?
15:34:02Araqor use doAssert
15:34:09Araqwhich is not nearly as complex
15:35:06Araqthe unittest module is loved by many, but for me it is a maintainance pita
15:35:25dom96Araq: Why is it still there? And why does koch tests execute it?
15:35:46Araq*maintenance
15:35:55*io2 joined #nimrod
15:36:02Araqdom96: my koch doesn't execute it
15:36:22reactormonkAraq, write a little unittest-koch? ^^
15:37:20Araqhi ceptr welcome
15:37:27*psquid quit (Quit: work)
15:38:29dom96Araq: ahh. Nimbuild didn't rebuild koch.
15:38:44Araqyeah and it shouldn't
15:38:51Araqkoch changes rarely
15:39:01dom96It does when github tells it that it was modified.
15:39:26Araqcan github do that?
15:39:35Araqkoch.nim is part of the compiler
15:39:48dom96yes.
15:40:07Araqit can tell us a single file changed? awesome
15:40:08dom96When you commit, github sends a list of modified files to nimbuild
15:40:18Araqah I see
15:41:04dom96Araq: Does the new tester still not generate testresults.json?
15:41:25Araqapparently not
15:41:48AraqoutputJson is never called ... -.-
15:42:22Araqah I see
15:42:36Araqit was generated in the 'merge' step which do not have anymore
15:45:26reactormonkAraq, kk, fixed all tests. The PRs are otherwise fine?
15:45:57Araqthe *pr*, I only looked at one
15:46:36reactormonktake a look at the rest too
15:46:52Araqlater
15:47:40*phI||Ip joined #nimrod
15:47:43Araqdom96: you only need the 3 numbers, right?
15:47:51Araqhi phI||Ip welcome
15:47:56phI||Ipthanks
15:48:56dom96Araq: hrm, you probably don't have the concept of the reject, compile and run categories right?
15:49:14dom96Araq: That's how the JSON used to be split up like.
15:49:23Araqdom96: not really, but I can recompute it
15:49:30dom96Araq: Just change it to whatever works and i'll adapt the builder.
15:49:46dom96All the builder needs is the number of tests passed, skipped and the total.
15:49:58Araqok, you'll get that instead then
15:50:13dom96testresults.html is also required
15:50:24Araqthat should be generated already
15:50:37dom96ok. In the same dir as koch?
15:55:14Araqyes
15:57:55Araqhave our test machines sqlite installed?
15:59:17dom96yep
16:00:55dom96Lucky for you :P
16:02:09Araqwell firefox uses it for its configuration
16:02:36dom96Yeah. All servers have firefox installed by default :P
16:02:57Araqit is the most deployed database in the world :P
16:03:09Araqmy smartphone has it too
16:04:41*codehotter joined #nimrod
16:04:43codehotter#haskell
16:04:54*codehotter left #nimrod ("WeeChat 0.3.7")
16:05:15Araqthat was ... impolite
16:06:16*truff_ joined #nimrod
16:07:10dom96hello truff_
16:07:30truff_hello
16:07:45truff_funny, you sent me here from #haskell
16:07:54dom96hah
16:08:05Araqcodehotter sent me to #haskell
16:08:15dom96codehotter joined here and said "#haskell"
16:08:38dom96I figured I would do something similar in #haskell :P
16:08:52*panz53 quit (Quit: Leaving)
16:08:57truff_i guess it worked :)
16:09:00Araqyeah and that was nice because I have never heard of the Haskell programming language ...
16:18:30*achim joined #nimrod
16:28:03*ceptr quit (Ping timeout: 272 seconds)
16:34:30*Clinteger\c joined #nimrod
16:40:02dom96Araq: Actually, I think you should keep these categories. Otherwise testing other branches will fail.
16:41:25dom96Araq: Just make it generate: {"run": {"passed": ..., "total": ..., "skipped": ...}, "reject": ..., "compile": ..., "passed": ..., "total": ..., "skipped": ...}
16:41:53dom96hi Clinteger\c
16:42:36dom96Araq: or hrm, nah. I can just get the builder to work with both formats.
16:45:17Clinteger\chello :)
17:08:41*aruniiird joined #nimrod
17:20:05*BitPuffin quit (Ping timeout: 248 seconds)
17:37:24*aruniiird quit (Ping timeout: 252 seconds)
17:44:56reactormonkClinteger\c, sup
17:46:12*BitPuffin joined #nimrod
18:02:14*[2]Endy joined #nimrod
18:04:37*[3]Endy joined #nimrod
18:04:41*[1]Endy quit (Ping timeout: 272 seconds)
18:06:07*brson joined #nimrod
18:07:00Araqhi Clinteger\c welcome
18:07:51*[2]Endy quit (Ping timeout: 272 seconds)
18:12:13*BitPuffin quit (Ping timeout: 245 seconds)
19:04:57*bbodi quit (Ping timeout: 252 seconds)
19:14:04*ninjashogun joined #nimrod
19:15:30*luyang joined #nimrod
19:15:30*luyang quit (Changing host)
19:15:30*luyang joined #nimrod
19:16:23NimBotnimrod-code/nimbuild master a774fff Dominik Picheta [+0 ±1 -0]: Add support for new testresults.json.
19:16:23NimBotnimrod-code/nimbuild master fadfd3b Dominik Picheta [+0 ±1 -0]: Get rid of dependency on koch clean.
19:16:23NimBotnimrod-code/nimbuild master 4b12f98 Dominik Picheta [+0 ±1 -0]: Changed the way the builder uses git.
19:16:23NimBotnimrod-code/nimbuild master 3184baf Dominik Picheta [+0 ±1 -0]: Nimrod/koch binaries are now tracked between branches.
19:16:34dom96hello luyang and ninjashogun
19:17:13ninjashogunhi dom96
19:17:18ninjashogunwhy did you say hi to just us two?
19:17:38dom96Because I like to say hi to new people :)
19:17:46ninjashogunnice of you :)
19:18:03ninjashogundo you follow startups at all dom96?
19:19:54dom96Not really. I look at HN if that counts heh.
19:22:19luyangdom96 your welcoming gives me an impression of a good and friendly channel
19:22:47dom96luyang: That's good. It is the impression we strive for :)
19:22:50luyangI keep reading about nimrod on Hacker News
19:22:53luyanggood
19:23:27luyangI mean it's been mentioned in comments
19:23:30ninjashogunso none of you have done a startup?
19:24:19dom96ninjashogun: There probably are a couple in here that have. But this channel is mainly about the Nimrod programming language.
19:24:35*[3]Endy quit (Ping timeout: 245 seconds)
19:24:52dom96luyang: Yeah, I noticed some people commenting about this channel in that Ask HN thread.
19:25:09luyangyeah
19:25:30NimBotnimrod-code/nimbuild master f86a6c5 Dominik Picheta [+0 ±1 -0]: Removed 'refs/' from branch name passed to git checkout.
19:26:27dom96luyang: Have you tried Nimrod at all yet?
19:27:50dom96ninjashogun: I am actually considering creating some sort of startup, still need to do a lot of research on it though. Have you done a startup?
19:30:12*Mat3 joined #nimrod
19:30:16Mat3hi all
19:30:24dom96hey Mat3
19:34:48Mat3hi dom96
19:39:35*BitPuffin joined #nimrod
19:39:50dom96Mat3: what's new?
19:44:08*Demos joined #nimrod
19:46:56Mat3not much, preparing a blog, new website and finsihing my VM environment
19:47:16Mat3^finishing
19:47:29dom96Cool. Will you be blogging about Nimrod?
19:47:38Demoswhat VM envirenment. I was setting something up with VMs just last week
19:48:04Mat3my bare-metal VM designa as base for these Nimrod subset
19:48:09Mat3^design
19:48:55Mat3(you now, MISC style, support for parallel processing and AOT compiler)
19:49:51Demosoh dear, are we getting a third vm?
19:50:48dom96What are the other 2?
19:50:54luyangdom96: No I haven't tried it yet. I need to learn more about it
19:51:34dom96luyang: I see. Well if you have any questions feel free to ask them here, or even highlight me if no one answers.
19:52:04Demosdom96, I thought a big feature of 0.9.4 was going to be a new vm for compile time FFI and nimrod i
19:53:13*zahary joined #nimrod
19:54:01dom96Demos: Yeah. That's only one though, what's the second VM?
19:54:23dom96I suppose you are referring to the AST interpreter in 0.9.2?
19:55:28Demoserm the one nimrod i uses right now...
19:56:12Mat3no, its an bare-metal environment for systems with restricted ressources (like AVR microcontrollers)
19:56:17dom96Yeah, that's an AST interpreter. Not sure if you can call that a VM.
19:57:02Araqdom96: VM is not strictly defined, an AST interpreter can count as a VM
19:57:28Mat3I do not know what you mean with AST. Anyhow I call that a soft-core to be precise
19:57:33dom96Araq: I see.
19:57:47Mat3ciao
19:57:51*Mat3 quit (Quit: Verlassend)
19:57:55NimBotnimrod-code/nimbuild master 61aaf90 Dominik Picheta [+0 ±1 -0]: Git checkout should now be fixed.
19:58:56*Icefoz joined #nimrod
20:06:15*iNode000 quit (Ping timeout: 260 seconds)
20:17:16*Icefoz quit (Quit: leaving)
20:18:28*waa joined #nimrod
20:19:55*waa left #nimrod (#nimrod)
20:22:54*luyang quit (Quit: Leaving.)
20:30:56*zahary quit (Quit: Leaving.)
20:44:42*luyang joined #nimrod
20:44:42*luyang quit (Changing host)
20:44:42*luyang joined #nimrod
20:49:43luyangI just installed nimrod via homebrew (Mac OS X package manager)
20:50:58luyangand nimrod is not in the path… Nimrod has been installed to /usr/local/Cellar/nimrod/0.9.2/libexec. The compiler will currently fail to find system.nim if called through a ymlink. To compile nim files, specify the full path to the compiler: /usr/local/Cellar/nimrod/0.9.2/libexec/bin/nimrod compile --run hello.nim
20:51:03luyangthat's just a shame
20:51:23Demoshey is code like this supposed to be invalid https://gist.github.com/barcharcraz/ac5c995322206dfbb456?
20:51:55Demoswe should fix the symlink thing.
20:52:07dom96Isn't it already fixed in master?
20:52:25Varriount'symlink thing'?
20:52:25DemosOK if it is than we should fix that message and the brew install files.
20:52:33dom96luyang: I suggest simply cloning the repo and adding where the nimrod binary is to your path.
20:52:51dom96Demos: We need to wait until 0.9.4 is released then
20:53:05Demosluyang, you could also use brew diy to let homebrew managed the compiler produced from master
20:53:15Demoss/managed/manage
20:53:18luyangbrew dyi? :)
20:53:52luyangsounds like a good solution but I haven't done it myself before with brew
20:54:11luyangI already have brew, it's just a matter of setting the path
20:54:21luyangs/brew/nimrod/
20:54:41Demoshttps://github.com/Homebrew/homebrew/wiki/FAQ down under the "Can I install my own stuff to /usr/local"
20:55:31Demostldr, clone nimrod, cd to the clone, brew diy, build nimrod
20:55:50Demosinstall nimrod to /usr/local/Cellar/nimrod/0.9.3
20:55:57Demosbrew link nimord
20:56:17AraqDemos: no, it's not supposed to be valid
20:56:23Demosdarn
20:56:39DemosI guess it is a edge case, is it even valid in C?
20:58:58*brson quit (Quit: leaving)
20:59:39luyangDemos thanks for the explanation
21:00:11Demosno problem
21:02:01luyangI tried to compile aporia and got command line(0, 0) Error: internal error: expr(nkNone); unknown node kind
21:02:02luyangNo stack traceback available
21:02:32*zahary joined #nimrod
21:07:02dom96Yeah, I think that's this issue: https://github.com/Araq/Nimrod/issues/342
21:07:41luyangah
21:08:14luyangkoch?
21:09:10luyang(the solution mentions ./koch)
21:09:23luyang./koch boot -d:release --gc:markAndSweep
21:09:23luyangbut I'm using nimcor
21:09:26luyangnimrod c
21:09:41dom96That's the tool used for bootstrapping the compiler.
21:10:31luyangok I feel I have to read up on the nimrod tools
21:11:38dom96There isn't many you need to know about.
21:12:04dom96I would give you a list but I don't think one exists.
21:12:55Araqhttp://nimrod-lang.org/tools.html ?
21:13:08Araqbut that's not complete
21:24:45*luyang quit (Quit: Leaving.)
21:29:59*BitPuffin quit (Ping timeout: 240 seconds)
21:36:56*shodan45 joined #nimrod
21:37:39*shodan45 quit (Read error: Connection reset by peer)
21:50:58*luyang joined #nimrod
21:50:58*luyang quit (Changing host)
21:50:58*luyang joined #nimrod
22:02:23*iNode000 joined #nimrod
22:02:47*ninjashogun quit (Quit: Leaving)
22:18:48*mblais5 joined #nimrod
22:19:09*mblais5 left #nimrod (#nimrod)
22:23:00luyangmy ./koch command finishes with FAILURE
22:23:06luyanglib/system/gc_ms.nim(62, 2) Error: undeclared identifier: 'InstantiateForRegion'
22:31:48dom96Seems someone broke the mark and sweep GC>
22:35:46luyangdoes nimrod have anything similar to junit?
22:35:49*io2 quit (Ping timeout: 248 seconds)
22:35:50luyangor nunit
22:37:32luyangthat could probably prevent such breaks, right?
22:38:23EXetoC'unittest' maybe, but many people do unit testing without it
22:38:26EXetoCluyang: I suppose
22:38:57luyangI tried to rerun it without gc and it seemed to be successful ./koch boot -d:release -d:nativeStacktrace
22:38:59EXetoCI tried to fix the errors in gc_ms but it got too complicated for me. changing the case of some of the symbols was the easy part
22:39:42EXetoCok, but --gc:markAndSweep was the supposed fix for Aporia
22:39:42luyangMy goal is to be able to create a binary of Aporia
22:40:07luyangWhen I try to compile Aporia I get aporia.nim(11, 7) Error: cannot open 'glib2'
22:40:43luyangEXetoC: yeah, any idea how that gc could be fixed?
22:42:42Demosthere may be dependencies, are you building with babel build?
22:42:44EXetoCthe babel package manager can take care of dependencies. you can also install the gtk2 package manually if you want
22:43:36luyangUm, I read about installing thre gtk2 package using MacPorts but I have Homebrew and MacbPorts doesn't work together with it
22:43:44Demosand you will find that a lot of tools that are seperate programs for other languages are just libraries in nimrod.
22:44:10Demosis gtk not avalible via homebrew?
22:45:03luyangI find these: gtk+ gtk-gnutella gtkmm3 gtkspell3 pygtksourceview gtk+3
22:45:15EXetoCgtk+ should be it
22:45:17luyangso I should install gtk+
22:45:35EXetoCbut you also need the wrapper written in nimrod. here's the package manager for nimrod https://github.com/nimrod-code/babel
22:49:40luyangI am looking forward to getting all this up and running
22:49:53luyanginstalling gtk+ and babel is installed and PATH'd
22:50:11Demosdo note that Aporia and nimrod's IDE integration are a little lacking right now.
22:50:45luyangok :)
23:07:39*luyang quit (Quit: Leaving.)
23:08:02*luyang joined #nimrod
23:08:03*luyang quit (Changing host)
23:08:03*luyang joined #nimrod
23:12:23*luyang quit (Ping timeout: 252 seconds)
23:12:55*psquid joined #nimrod
23:13:59*zahary quit (Quit: Leaving.)
23:21:47*brson joined #nimrod
23:21:47Demosdoes nimrod have any notion of const at all? if I am writing declerations for C functions that take const params what do I use?
23:22:00Araqno
23:22:12Araqignore the 'const'
23:22:53Araqit's absurd crap anyway
23:23:06Demosyeah, it is pretty pointless
23:23:22Araqthe optimizer cannot do anything with it, since mutable aliases can exist
23:23:39Demosyeah, it can be nice in c++ because of the way params work
23:23:48Demosbut in nimrod it would be pointles
23:23:50Demosjust asking
23:23:54Araqand it doesn't compose, you cannot pass a vector<const string> to a vectory<string>
23:27:39Demosyou mean the other way round right? vector<string> to vector<const string>
23:30:21Demoswhy did you decide to add unsigned types as opposed to keeping the % operators?
23:31:50Araqbecause it was too hard to constuct integers from signed int8, even for me :-)
23:32:07Araqunsigned sucks, but signed int8 instead of byte sucks even more
23:34:12Demosright, I guess that is reasonable
23:34:53reactormonkdom96, kk, updated
23:37:05*aruniiird joined #nimrod
23:42:30EXetoCAraq: did I get this part of the syntax unification right? "proc init(x: var T); var x = init()"
23:42:50AraqEXetoC: no
23:43:10Araqor yes
23:43:18AraqI dunno yet
23:43:33Araqin any case it'll require a pragma
23:43:37Araqmost likely is:
23:44:00Araqproc foo(result: var T) {.func.}
23:44:17Araq# compiler also supports: let x = foo()
23:44:27Araqand generates this:
23:44:40Araqfoo(freshTemp); let x = freshTemp
23:45:58NimBotAraq/Nimrod devel 1b8b276 Araq [+0 ±1 -0]: bugfix: object constructor doesn't allow 'distinct' types
23:45:58NimBotAraq/Nimrod devel c7f04ad Araq [+0 ±1 -0]: documented new symbol binding rules for templates
23:45:58NimBotAraq/Nimrod devel 7d45780 Araq [+0 ±2 -0]: case consistency for evalffi
23:45:58NimBotAraq/Nimrod devel 9919f31 Araq [+0 ±1 -0]: case consistency for evalffi
23:45:58NimBot12 more commits.
23:46:18Araqdom96: here you go the new tester supports json output
23:46:34Araqand 'koch' should produce it
23:47:50dom96thanks
23:48:18Araqalso fyi the threading tests all work on win32, including 'joinThreads'
23:51:11Araqreactormonk: why do we need 'transpose' for seqs in the algorithm.nim?
23:51:39Araqthat is only necessary for matrixes, right?
23:52:24EXetoCAraq: ok so the semantical difference is that one copy
23:53:13AraqEXetoC: no, it's a profound feature
23:53:44EXetoCI mean in that isolated case
23:53:57Araqoh ok
23:54:23Araqwell the copy is not necessary, 'let x= freshtemp' could be a move too
23:55:57NimBotAraq/Nimrod devel c82135c Grzegorz Adam Hankiewicz [+0 ±1 -0]: Adds note about manual memory handling to GC doc.
23:55:57NimBotAraq/Nimrod devel d12652e Andreas Rumpf [+0 ±1 -0]: Merge pull request #843 from gradha/pr_gc_docs... 2 more lines
23:56:20NimBotAraq/Nimrod devel 3b10841 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Avoids raising exceptions in tryInsertID.
23:56:20NimBotAraq/Nimrod devel eac992f Andreas Rumpf [+0 ±1 -0]: Merge pull request #855 from gradha/pr_fixes_try_insert_id... 2 more lines
23:57:28EXetoCI was trying to figure out how that could be done without introducing additional language features. Do you have to transform the C code rather than just the AST?
23:58:21Araqthe compiler will transform just the AST
23:58:58Araqbut it's tedious/slow/causes code bloat to do with a macro