<< 24-06-2014 >>

00:04:59*q66 quit (Ping timeout: 252 seconds)
00:05:13EXetoCpretty good and that
00:05:29*milosn quit (Ping timeout: 276 seconds)
00:09:00Joe_knockyikes, does anybody else keep up with political news?
00:09:16dom96no? what happened? did Obama die?
00:10:24*q66 joined #nimrod
00:10:24Joe_knockdom96: It's basically war or near-war in eastern europe, middle east and asia's oceans.
00:10:57dom96Joe_knock: Ahh, well in all seriousness, I did follow the Ukraine situation a bit.
00:11:23dom96No idea what's happening in Asia or the middle east.
00:11:49flaviuJoe_knock: source?
00:11:58Joe_knockIt's weird though. I don't know how to react, considering how the media likes to make heavy weather of everything.
00:12:01*milosn joined #nimrod
00:12:15Joe_knockflaviu: Huffington Post and other US sources (from Yahoo).
00:12:58flaviu"Giant Vagina Eats Man"
00:13:04flaviuYou're right, it is terrible
00:13:46flaviuBut really, I can't find anything
00:14:18AraqI don't follow the news much anymore. It's all lies all the way down until you hit turtles
00:14:28*joelmo quit (Quit: Connection closed for inactivity)
00:15:00Joe_knockThere's also something about 180 journos getting the death sentence in Egypt.
00:15:21flaviuJoe_knock: Get better sources. Its 3, and its 10 years jail
00:15:36Joe_knockI think the media sometimes puts in these kinds of "doozies" to get some crazies to react to the news, thereby creating more news.
00:15:48DemosI try and listen to the radio while I shower and eat breakfast, but I rarely watch the TV news
00:16:03flaviuNear war in asia means "South korean solder goes insane and kills 5 of his unit"
00:16:37Demoserm perhaps this would be a good thing to take to #nimrod-offtopic...
00:17:03EXetoCpossibly
00:17:35flaviuDemos: Yeah, but its empty
00:18:29Demoswell still, we should keep politics and religion out of the main channel.
00:19:00Joe_knockyeah, I agree with you guys. I just find the media itself strange. Anyways, back to #nimrod
00:35:58*KevinKelley quit (Ping timeout: 246 seconds)
00:37:20Araqgood night
00:44:50fowlJoe_knock, heh, earlier on my facebook people were reacting to a video from the onion like it was real
00:44:58fowlhttp://www.theonion.com/video/proposed-classified-bill-will-defend-against-flesh,14175/
00:59:24*q66 quit (Quit: Leaving)
01:00:13*nande joined #nimrod
01:09:47*flaviu quit (Remote host closed the connection)
01:11:18*flaviu joined #nimrod
01:18:51*nequitans_ joined #nimrod
01:23:15*hoverbear joined #nimrod
01:40:58*Arcanum_za joined #nimrod
01:51:13*nande quit (Remote host closed the connection)
01:57:16*nande joined #nimrod
01:57:42*hoverbear quit ()
01:58:51*hoverbear joined #nimrod
02:02:46*hoverbea_ joined #nimrod
02:04:05*hoverbear quit (Ping timeout: 244 seconds)
02:04:37*Arcanum_za quit (Ping timeout: 264 seconds)
02:05:20*saml_ joined #nimrod
02:24:09*dorei quit ()
02:28:18*brson quit (Quit: leaving)
02:28:43*kemet joined #nimrod
02:29:00*kemet quit (Client Quit)
02:50:33*Demos quit (Ping timeout: 240 seconds)
02:55:50*Joe_knock quit (Quit: Leaving)
03:12:28*springbok joined #nimrod
03:19:00*shevy quit (Ping timeout: 244 seconds)
03:37:05*shevy joined #nimrod
03:50:33*flaviu quit (Ping timeout: 240 seconds)
03:51:10*saml_ quit (Quit: Leaving)
04:18:37*shevy quit (Ping timeout: 240 seconds)
04:32:15*shevy joined #nimrod
04:55:11*nande quit (Remote host closed the connection)
05:01:34*nande joined #nimrod
05:04:33*darkfusion quit (Ping timeout: 240 seconds)
05:09:37*nequitans_ quit (Ping timeout: 240 seconds)
05:23:21*Skrylar joined #nimrod
05:32:47*Puffin quit (Ping timeout: 272 seconds)
05:41:34*kunev joined #nimrod
05:48:21*hoverbear joined #nimrod
05:49:37*hoverbea_ quit (Ping timeout: 240 seconds)
06:03:03*xtagon quit (Ping timeout: 240 seconds)
06:10:17*darkfusion joined #nimrod
06:14:19*hoverbear quit ()
06:16:00*gkoller joined #nimrod
06:23:58*btiffin quit (Ping timeout: 244 seconds)
06:34:14*Puffin joined #nimrod
06:34:46*Puffin quit (Client Quit)
06:35:03*BitPuffin joined #nimrod
06:36:55*btiffin joined #nimrod
06:55:47*Matthias247 joined #nimrod
07:15:40*redwolf joined #nimrod
07:15:44*redwolf left #nimrod ("Leaving")
07:19:41*Matthias247 quit (Read error: Connection reset by peer)
07:26:23*nande quit (Remote host closed the connection)
07:58:08*joelmo joined #nimrod
08:01:08*ARCADIVS quit (Quit: WeeChat 0.4.3)
09:00:36*kunev quit (Quit: Lost terminal)
09:44:34*kunev joined #nimrod
09:46:27*shodan45 quit (Read error: Connection reset by peer)
09:46:54*shodan45 joined #nimrod
11:19:14*io2 joined #nimrod
11:33:26*saml_ joined #nimrod
11:43:36*io2 quit (Ping timeout: 260 seconds)
12:13:04dom96hello
12:13:07*pafmaf joined #nimrod
12:13:08*pafmaf_ joined #nimrod
12:13:30*pafmaf_ left #nimrod (#nimrod)
12:18:43dom96So, who wants to help get news about babel's new release to the top of reddit?
12:22:34joelmohave you made a post, give the link so I can thumbsup :)
12:22:48dom96not yet. Wanna see who can help.
12:23:34*untitaker quit (Ping timeout: 244 seconds)
12:29:49*untitaker joined #nimrod
12:34:47*io2 joined #nimrod
12:37:51def-dom96: what kind of help?
12:38:21Araqdiscussing nimrod on reddit
12:38:29dom96def-: upvoting, perhaps answering people's questions in comments
12:38:38Araqlike telling people "yes, we really support closures"
12:38:40dom96but mainly upvoting
12:40:44def-dom96: I'll take a look
12:42:09*saml_ quit (Quit: Leaving)
12:44:03dom96def-: joelmo: Do you guys also have HN accounts? Perhaps you could upvote on HN too?
12:44:26def-sure
12:47:20joelmodom96: sorry I dont have HN, is it worth to make an account there?
12:47:49*goobles quit (Ping timeout: 246 seconds)
12:47:51dom96joelmo: Yeah, but even if you make a new account you likely won't be able to upvote.
12:48:22dom96I think you need to get some karma yourself before you can upvote on HN
12:48:26dom96not sure how it works really
12:48:33dom96But HN gets a lot of traffic
12:48:49Araqwe need other ways of news distribution
12:48:55Araqreddit+HN is not enough
12:49:34joelmofacebook?
12:49:52dom96we have twitter
12:50:05dom96There is also this: https://lobste.rs/
12:52:02joelmohttps://www.ohloh.net/p/Nimrod/rss_articles
12:52:12clone1018I'm really excited about Nimrod I really wish I had projects to use it on
12:52:20clone1018Most of my development is web based at the moment
12:54:30dom96clone1018: You can certainly use it for web based stuff.
12:55:12clone1018Yeah, that's true
12:55:41joelmodo you use some application for distributing news, I know hootsuite can do that, but I havent used this
12:55:49clone1018We're definitely going to look into using it for other projects in the company later on
12:57:41dom96Does this sound like a good title? "New version of Babel, Nimrod's package manager, has been released"
12:57:54Araqnah
12:58:43AraqBabel! For the guys who don't know who Nimrod was!
12:59:36dom96I don't think that will work...
13:01:26Araqmeh
13:01:47dom96Araq: well, thanks for the encouragement.
13:01:50Araqhow many packages do we have in babel btw?
13:02:31def-Araq: 76
13:02:46Araqalso ... maybe you should give a decent website, featuring some "package of the month"
13:03:12dom96lol
13:03:21dom96I'll link to the github page
13:03:25def-dom96: is there a description somewhere how to make a package.babel file?
13:03:40dom96https://github.com/nimrod-code/babel/blob/master/developers.markdown
13:03:56def-Oops, my bad
13:04:17def-that's a small link at the main github page
13:05:25dom96How should I make it more visible?
13:05:37Araqgive it a real website
13:05:54def-I only scanned the headers on https://github.com/nimrod-code/babel and didn't see anything
13:06:03Araqthis github stuff is getting annoying
13:06:17Araqpeople enjoy real websites
13:07:51dom96There is no need for a real website for now.
13:08:22Araqyou could at least write some blog post
13:08:29Araqyour blog has a decent design
13:08:51dom96brb
13:12:36*darkf quit (Quit: Leaving)
13:32:48*io2 quit (Ping timeout: 260 seconds)
13:34:25dom96back
13:34:40dom96Araq: what should I write in the blog post then?
13:35:21*kunev quit (Quit: leaving)
13:36:50Araqthat we have 76 packages already
13:37:15Araqthat it runs on the 3 major operating systems
13:37:44Araqthat's it's slim and uses the filesystem as its database
13:38:58Araqthat it is the official package manager and hopefully we won't get that crazy python situation which has like 3 different ways to install a python dependency
13:40:56*kunev joined #nimrod
13:51:03dom96ok
13:57:06dom96Araq: Something similar to this? http://elm-lang.org/blog/announce/PackageManager.elm
13:57:19dom96It goes into technical details though.
14:11:29*eigenlicht joined #nimrod
14:22:10Araqwell "similar"
14:22:21Araqthis one is actually quite boring :P
15:17:26*gkoller quit (Ping timeout: 276 seconds)
15:20:37flyxis there a type I can use for anything I can iterate over? so that I can pass an array to it, but also an iterator proc?
15:54:47*io2 joined #nimrod
15:55:59*Matthias247 joined #nimrod
15:56:37*kunev quit (Ping timeout: 272 seconds)
16:04:47Araqflyx: you can use a generic or a template
16:07:05flyxAraq: hm yes, I thought about that. wouldn't it make sense to add this on a language level? most other languages with iterators have some kind of "iterable" type
16:07:40Araqwell the upcoming type classes are exactly about that
16:08:30flyxah, okay
16:12:53*hoverbear joined #nimrod
16:19:44*Jesin joined #nimrod
16:29:06*goobles joined #nimrod
16:34:11*ehaliewicz joined #nimrod
16:34:37*BitPuffin quit (Ping timeout: 272 seconds)
16:34:50Araqhey goobles
16:35:03goobleshola
16:36:15Araqget your reddit account hot and vote us into oblivion
16:36:32Araq(hmm is that correct english? I doubt it)
16:39:07*Matthias247 quit (Read error: Connection reset by peer)
16:39:07dom96downvote into oblivion makes more sense
16:39:14dom96upvote into heaven? lol
16:39:22dom96Anyway, what do you guys think? http://picheta.me/articles/2014/06/babel--nimrods-package-manager.html
16:39:39dom96def-: joelmo: you guys still around?
16:40:15gooblesoblivion?
16:44:24dom96goobles: hell
16:45:17gooblesdom96: tom cruise movie
16:45:45dom96oh yeah
16:46:28*io2 quit (Ping timeout: 260 seconds)
16:47:09gooblesoblivion means forgotten, i don't think you want nimrod voted into oblivion;0
16:47:15*kunev joined #nimrod
16:49:40*q66 joined #nimrod
16:50:59dom96Well. I guess I need new volunteers to help with reddit.
16:51:03dom96Anyone?
16:51:47dom96goobles: I thought it meant something worse than hell, but that doesn't fit Araq's context either heh
16:54:30def-dom96: submitted already?
16:54:43dom96def-: not yet
16:54:54dom96I guess I may as well just do it.
16:55:05dom96Is the title good? "Babel - Nimrod's package manager"?
16:55:17def-Maybe "Babel 0.4" ?
16:55:34dom96People won't know what Babel is though
16:55:43def-alright, i don't know
16:57:32dom96Araq: Thoughts?
16:57:59Araqdom96: it's ok, but I'm thinking about something with more spice
16:58:13gooblesit manages packages or someding
16:58:53dom96Also, should it be "Babel, Nimrod's package manager" or "Babel - Nimrod's package manager" or are both fine?
16:59:20Araqno comma
16:59:26Araqdash is better
16:59:30dom96good
16:59:42dom96ok, i'm just going to submit it
16:59:53AraqBabel - Orcs and Humans
17:00:09dom96yeah... I won't get anything serious out of you huh? :P
17:00:28btiffinHello, building from sources. master branch, compiling koch comes back with
17:00:29btiffinlib/system.nim(2721, 33) Warning: unknown magic 'Rand' might crash the compiler [UnknownMagic]
17:00:51btiffinlib/system.nim(2721, 5) Error: implementation of 'system.rand(max: int): int' expected
17:01:26btiffinCommenting out 2721, (and deindenting the following comment, lets the build complete.
17:02:10btiffinIs this my end (Fedora 19, git clone a few minutes ago) or is it Nimrod master?
17:02:45fowlbtiffin, try the devel branch
17:02:55btiffintrying...
17:04:12dom96I submitted it, better upvote from /new just in case: http://www.reddit.com/r/programming/new/
17:04:15Araqbtiffin: I think we broke master ... :-/
17:04:59dom96and on HN: https://news.ycombinator.com/newest
17:05:44dom96btiffin: Araq: The C Sources here: https://github.com/nimrod-code/csources are for the devel branch.
17:05:44fowldom96, upvoting nimrod articles is the only reason i have reddit
17:05:48dom96fowl: :D
17:06:04dom96btiffin: Araq: perhaps that is the issue?
17:06:13fowlhttp://www.reddit.com/user/senor_fowl/
17:06:39dom964 upvotes already on HN, nice!
17:06:43fowldevel should be merged into master since its stableish
17:06:46dom96Thanks guys.
17:07:09*brson joined #nimrod
17:07:15*brson quit (Client Quit)
17:07:23*brson joined #nimrod
17:07:38dom96Now i'm going to order chinese food to celebrate :)
17:09:19*brson quit (Client Quit)
17:09:38*KevinKelley joined #nimrod
17:09:43*brson joined #nimrod
17:09:47btiffin-b devel worked. Thanks.
17:10:34EXetoCit's the default since a couple of months back so I don't know what you were doing
17:10:40btiffinAraq; Yeah, I though you might like to know :-)
17:12:44fowlwell afaict master should be updated periodically while all the work happens on devel
17:13:05fowlbut git is a mystery to me, i do not meddle in the affairs of wizards
17:13:38Trixar_zamozilla?
17:16:24*brson quit (Quit: leaving)
17:16:32*brson joined #nimrod
17:16:42*Jehan_ joined #nimrod
17:18:31fowlwoot
17:18:49fowlfrom the gobolinux dev "the plan is to make the 64-bit version in the second half of the year"
17:19:29Jehan_Umm … there is a Linux distribution that doesn't support 64-bit yet?
17:19:37*Jehan_ is slightly disturbed.
17:20:18fowlnot only is there one, there is more than one
17:30:17gooblesi've never used a package manager
17:35:37*superfunc joined #nimrod
17:35:51goobleswhy would i want a package manger
17:35:56goobleswhat does this do for me
17:36:07gooblesit just downloads 3rd party code automatically?
17:36:28EXetoCare you using linux?
17:36:31gooblesusing ..command line..
17:36:34gooblesno windows
17:36:50*Trixar_za hands goobles a gun
17:36:58Trixar_zaPut it out of it's misery
17:37:00EXetoCit's still a pain then imo, but much less so
17:37:12gooblesi got windows 8.1 jizz
17:37:23fowlgoobles, using open source software on windows is a nightmare
17:37:38EXetoCcommand line? no, not only
17:37:40Trixar_zaEspecially Windows 8
17:38:50btiffinIs nimrod i (interactive) supposed to have stdin defined? ansi_c.nim complains, but I haven't read enough to know what level of expectation to, umm, expect
17:38:53*nande joined #nimrod
17:39:24EXetoCit's basically unusable
17:40:08btiffinThat's the level then. ;-) Thanks EXetoC
17:41:24fowltell araq you want the vm to have FFI
17:41:46goobleswhy would it need that
17:42:11fowlto access c things without being compiled
17:42:29gooblesoh ic, he said you could "gorge"
17:42:32gooblesinstead
17:43:29fowlnot really a substitute
17:43:39*kunev quit (Ping timeout: 240 seconds)
17:44:44btiffinThis is just opinion, but... if/when nimrod has a console; Araq: make the default prompt >>> (or what it ends up as) a no-op/ignorable in the interpreter. Then you can snag one line Nimrod session logs or forum posts and paste them right into the console.
17:46:24Jehan_What I'd really like to see is something like IPython's notebooks.
17:47:41btiffinThat is a new benchmark in human machine interfacing, isn't it Jehan :-) Wolfram the PL has a similar vibe.
17:47:42*kunev joined #nimrod
17:48:37Jehan_http://nbviewer.ipython.org/github/ipython/ipython/blob/2.x/examples/Notebook/Running%20Code.ipynb
17:48:51Jehan_btiffin: It's actually a pretty simple setup.
17:50:00Jehan_Basically, it's a webserver with a javascript frontend.
17:50:32Jehan_Allows you to edit Python code in a textbox and display prettied-up output.
17:51:06btiffinYep, been a fan for a years now. Broadway in GDK with GTK 3+ *might* just make this a fairly ubiquitous interface in the near future.
17:51:29btiffinmissed a few between a years
17:51:39Jehan_I prefer this setup over traditional REPLs, because it's useful for more than oneliners.
17:53:07btiffinAnd the one liner was a bit of a misnomer, any script listing that looks like a session log ($ lines for bash for instance, when listed - can't be evaluated in that form). It's nice when the visual hint is simply ignored as comment.
17:57:38gooblesa slow javascript frontend, oh boy
18:02:09*Johz joined #nimrod
18:02:26btiffinEveryone here has tried broadwayd right? Pretty cool thing. Should be getting a lot more press, imh opinion. With no lines of code change or even a recompile, a desktop application transforms into a web gui. goobles; Yep, but this is for free in terms of toggle an environment variable for desktop, or browser. Slower, but there for the asking in times of need.
18:04:13EXetoCI haven't
18:04:48gooblesi have certainly not
18:05:42btiffintry it with GDK_BACKEND=broadway gedit
18:06:12btiffinbrowse http://localhost:8000 to run the gnome editor in the browser
18:07:57btiffinwrong default port (I always run broadwayd 8080)
18:08:53Jehan_btiffin: Not a Linux user, so not familiar with it. I'll have a look later.
18:10:01EXetoCbuilding it now
18:10:01*kunev quit (Ping timeout: 264 seconds)
18:10:57EXetoCit's not C++ so it doesn't take 10+ minutes to compile \o/
18:11:24btiffinNo need to build it really, it'll ship with any GTK 3 supported distro as well. But do build it anyway :-)
18:12:31gooblesC++ doesn't *always* take 10 minutes to compile;0
18:14:50btiffinNimrod-GTK benefits from all of this as well. Freebies are awesome.
18:15:56btiffinassuming Nimrod can build with pkg-config gtk+-3 (still reading....)
18:16:58*hoverbear quit (Ping timeout: 244 seconds)
18:17:19*hoverbear joined #nimrod
18:18:06fowlsomeone has a gtk3 wrapper
18:18:24EXetoCpkg-config? probably
18:18:32EXetoCbtiffin: just getting a blank page now
18:21:17btiffinHmm, works in Fedora 19, out of the box. I'll admit to being low-fu on GDK and the build sequence.
18:22:07EXetoCok now
18:22:16btiffintry broadwayd :1 & GDK_BACKEND=broadway gedit; browse http://localhost:8000
18:22:52dom96goobles: I use babel on Windows 8, it works well IMO
18:23:14btiffinoops BROADWAY_DISPLAY=:1 GDK_BACKEND...
18:23:48btiffinIt's pretty cool for a freebie
18:26:38EXetoCyou can use X over a network though
18:28:28EXetoCI guess this is more restrictive by default
18:31:42EXetoCit takes ages before widgets show up, but it works
18:35:27btiffinYeah, it's going through both a pixel transform and an event to websocket sequence, so it'll always be slow probably. But, it's there, for remote demo's and such.
18:40:41flyxhow can I use bindSym? I try to use it in my macro, but the compiler complains that it cannot evaluate the first argument at compile time. it's "$node", where node is a PNimrodNode
18:41:09flyxthe macro is executed at compile time, so obviously $node *can* be evaluated at compile time
18:55:22AraqbindSym is supposed to be used with string literals
18:55:30AraqbindSym"stdout"
18:56:50Araqyou can't pass a compiletime runtime string (that's a runtime string evaluated at compiletime) to it
18:59:19Araqit's quite subtle but think about it this way: macros must not access the symbol table when they are evaluated
18:59:26Araqbecause it's too late by then
19:00:11Araqyou can't guarantee what bindSym wants to guarantee then:
19:00:16fowl<- never used bindsym
19:00:29fowlwrote a hundred macros
19:01:38Araqlet foo = 4; macro m(s: string) = ... bindSym(s) ...
19:01:54Araqm("foo") # binds to the foo that is 4
19:02:01Araqlet foo = "ha, override"
19:02:13Araqm("foo") # binds to the foo that is "ha, override"
19:02:21*bastian_1 joined #nimrod
19:02:40fowlAraq, is there an example in which using nnkident would not be sufficient
19:03:02*bastian_ quit (Remote host closed the connection)
19:03:02*bastian_1 quit (Remote host closed the connection)
19:03:02*bastian__ quit (Remote host closed the connection)
19:03:06Araqthat is not *symbol binding*, that's the same mess that you get when you use nnkIdent"foo" in the first place!
19:03:25fowlso it binds after the macro returns, whats the diff?
19:03:40*bastian_ joined #nimrod
19:03:50Araqthe diff is that bindSym(s) doesn't even compile, fowl
19:03:58Araqto prevent that from happening
19:03:59bastian_hey
19:04:46fowlo_k
19:05:16Araqso you do bindSym"foo" and only the 'foo' in scope of the macro definition gets bound
19:05:17bastian_just grabbed babel and 'nimrod c -r src/babel install' as stated in the readme, but got an: src/babel.nim(672, 66) Error: undeclared identifier: '{}'
19:06:10Araqbastian_: I suppose babel 0.4 depends on nimrod devel
19:06:53bastian_ok, i'll give it a try
19:08:35fowlAraq, can i use bindsym to capture local symbols
19:08:41fowlnon-exported
19:10:36Araqfowl: sure
19:11:27bastian_another question: is it possible to make the link pragma relative to the source file? atm. i'm importing a module which is located in a different directory and which has a link pragma, but nimrodc looks into the importing module's directory
19:11:37EXetoCI made a PR. seems like a good idea to update the 0.4 tag
19:15:36NimBotnimrod-code/babel master 0a0f9a4 Erik Johansson Andersson [+0 ±1 -0]: Update babel.babel... 2 more lines
19:15:36NimBotnimrod-code/babel master e079ab4 Dominik Picheta [+0 ±1 -0]: Merge pull request #43 from EXetoC/patch-1... 2 more lines
19:15:39dom96EXetoC: thanks
19:15:54dom9656 people on my blog :O
19:16:17EXetoCat this moment?
19:16:28dom96yep, 60 now
19:16:32EXetoCdang
19:16:46dom96i'm glad my site is static lol
19:18:04OrionPKmine isnt and I somehow do requests more quickly than ur site :p
19:18:13OrionPKmaybe it's just a factor of the location
19:18:16bastian_got nimrod HEAD, pulled babel, but still get: lib/pure/osproc.nim(16, 34) Error: cannot open 'cpuinfo'. on OS X btw
19:18:18EXetoCdom96: so, can the 0.4 tag be updated?
19:18:49EXetoCthough it might not be clear that 0.9.5 is the development version
19:19:17EXetoC#head didn't work of course
19:19:38flyxAraq: okay. I thought when using an immediate macro, I can bind symbols later because they are not bound yet
19:19:55dom96EXetoC: I don't think changing the tag is a good idea.
19:20:42flyxanother question: can I get a string representation of a typedesc?
19:21:31EXetoCit's just that it isn't very old, but it's a fairly minor change
19:22:22dom96bastian_: does lib/pure/concurrency/cpuinfo.nim exist for you?
19:23:05dom96EXetoC: Also to install head now you need to write @#head
19:24:18*vendethiel joined #nimrod
19:24:49bastian_dom96: yep
19:24:50dom96EXetoC: I'm scared that changing a remote tag will mess something up majorly.
19:25:02superfuncdom96: I just noticed babel's syntax is similar to toml, is that by design?
19:25:27dom96superfunc: No. Babel's syntax is similar to ini.
19:25:48dom96superfunc: With some slight additions.
19:26:10dom96superfunc: More info here: http://build.nimrod-lang.org/docs/parsecfg.html
19:26:15EXetoCdom96: was # ambiguous? a switch seems better
19:26:50dom96EXetoC: I figured it's better to be consistent. The version comes after the @
19:27:39dom96EXetoC: And you can now write: babel install [email protected]
19:28:09dom96much better than writing babel install -v 0.1 foo, especially when you want to install multiple packages at once.
19:29:28dom96bastian_: Make sure it's not using an old nimrod.cfg
19:30:07superfuncdom96: Nice, thanks
19:30:13dom96bastian_: You should see a "Hint: used config file" when compiling
19:32:25dom96superfunc: It's funny though, Araq came up with what is mostly toml way before toml saw the light of day :P
19:32:59bastian_it's using babel's src/babel.nimrod.cfg and the nimrod.cfg that just got installed using 'koch install'
19:33:35dom96bastian_: Check to see if that config file has 'path="$lib/pure/concurrency"' in it.
19:35:44bastian_it does. but the lib directory that koch produced doesn't have a concurrency directory
19:35:54bastian_looks like it forgot to copy it over?
19:37:38dom96bastian_: Possible. We don't really use 'koch install' heh.
19:38:33fowlbastian_, if you're on linux, dont bother installing, just symlink nimrod somewhere in $PATH
19:39:12dom96I would personally do that everywhere. He's on Mac OS X though, perhaps doing that on OS X is problematic?
19:39:26fowlyeah that doesnt work on os x
19:39:53fowli think there is a page on the wiki about this
19:39:59bastian_no, it's just fine, simply followed the readme
19:40:33fowlhey when did koch get a chefs hat icon
19:41:27bastian_still think this is a bug: all directories in lib are copied over, except the new concurrency one
19:42:04dom96bastian_: That's really odd. Report it please.
19:42:09bastian_the install.sh is missing them
19:42:17bastian_will do
19:51:38*dymk quit (Remote host closed the connection)
19:53:30superfuncdom96: lol, I'm writing a parser for it right now
19:53:45dom96superfunc: in nimrod?
19:53:49superfuncdom96: yeah
19:53:55dom96superfunc: cool
19:53:57superfuncdom96: Its all I use now, really
19:54:14superfuncunless I'm at work, where its boost c++ and some c# stuff
19:55:22Araqcool so we're now using the existance of the new concurrency stuff for version checking
19:55:41dom96Araq: what
19:56:05*io2 joined #nimrod
19:56:10Araqdom96: well that's what you did, right?
19:56:38dom96no?
19:58:19*pafmaf quit (Quit: This computer has gone to sleep)
20:01:57*Matthias247 joined #nimrod
20:02:23flyxhm. is nnkBracket some special thing? when I try to write newNimNode(nnkBracket), the compiler complains: Error: value of type 'Array constructor[0..-1, empty]' has to be discarded
20:02:32flyxI don't see where there's an array constructor
20:03:34fowlflyx, that node is empty
20:03:38fowl"[]"
20:04:06fowlis what that is in syntax, so its an empty array with no type (no members to glean the type from)
20:04:10flyxfowl, I add content later
20:04:20flyxbut the compiler doesn't get there
20:04:40fowlcan i see
20:04:41flyxquick minimal example: https://gist.github.com/flyx/0402c4e9f97f7ce6ae0d
20:06:09flyxah well, discard doesn't seem to work in that way
20:06:31flyxthen let me try to properly reproduce my actual error
20:07:01fowlflyx, oh, the problem is you're returning stmt instead of expr
20:07:18fowlso its considering [] as its own statement (which needs to be discarded)
20:08:04flyxfowl: yes. unfortunately, that wasn't a proper minimalization of my actual problem
20:10:29flyxoh, but I see that the error is not at that line, but in the generated source
20:11:03flyxsometimes this macro stuff *does* get confusing
20:15:51*nande quit (Remote host closed the connection)
20:16:01Araqflyx: well a bug report with these line info problems would be helpful
20:16:01*superfunc quit (Ping timeout: 264 seconds)
20:18:01flyxAraq: I don't think it's a bug here. may it be that when I call newNimNode without a second argument, the compiler takes the position in the code where newNimNode() is called as reference position
20:18:21flyxthat would explain why I get that line reference with the error message
20:22:35Araqwell yes
20:25:13flyxthat explains it then.
20:25:48flyxI just need to remember that any error pointing to such a line may also be an error in the generated AST
20:26:11Araqwell that's not the nimrod way
20:26:36Araqthe nimrod way is to complain endlessly and refuse to use the language until we improved the situation
20:27:26Araqbut more seriously, if you have an idea of how to improve the line information be my guest
20:27:47fowlflyx, it also says "instantiation from ..."
20:28:04AraqI think we could instead go up the call chain to the AST generating proc that is not in macros.nim as the "source" of the node
20:28:40flyxfowl: the complete error I got was: is it possible at that point to tell the user
20:28:45flyxoh
20:29:00flyxdamn you ctrl+v
20:29:09flyx /Users/Felix/Projects/libs/NimHTML/src/tagdef.nim(82, 24) Error: type expected
20:29:18flyxno "instantiation from" here
20:29:34Araqyeah that's sometimes missing
20:29:34*superfunc joined #nimrod
20:29:36fowllook up or down a few lines
20:29:44flyxanyway, I fixed it now
20:29:59flyxit was the correct message for the error in the AST I built
20:30:11flyxit just didn't include "instantiation from"
20:30:35fowlflyx, BTW when you are writing a macro, at the end of it put "echo repr(result); quit 0"
20:30:57fowlthen you can see what code is resulting
20:31:08flyxfowl: I did that to discover the problem. my AST is just pretty huge right now and I don't always spot the error
20:31:19Araqfowl: why not quit repr(result) ?
20:31:47fowlAraq, non-zero program return
20:31:59dom96why the need to quit?
20:32:16fowlso that you see the code and not the compilation messages
20:32:29dom96--verbosity:0
20:34:23fowlsure if you want to split up your workflow
20:39:55dom96*shrug*
20:40:12dom96quit is fine if you want to use it
20:40:47fowldom96, the point is to avoid errors from bad code being generated
20:51:10fowlflyx, re #1302, did you try import "../somemodule"
20:51:22flyxfowl: aye
20:51:35flyxoh, you mean, quoted?
20:51:37flyxI'll try
20:51:38fowlyes
20:52:01*Matthias247 quit (Read error: Connection reset by peer)
20:52:22flyxthat works.
20:59:01*BitPuffin joined #nimrod
21:01:53VarriountMeep
21:02:07VarriountHello honey badgers!
21:04:46superfuncYooooo
21:07:20dom96hiiii
21:08:16dom96BitPuffin: Would you look at that, we're on the front page of HN.
21:08:24Jehan_Speaking of imports, is there a good way to resolve the problem of having two modules with the same name in different packages?
21:09:25reactormonkI don't think we solved that problem yet
21:09:35dom96We have.
21:09:47dom96Put the modules in two differently named directories.
21:10:03Jehan_And import parentdir.modulename?
21:10:05dom96In this case the directory names should match the package names.
21:10:13reactormonkno way to get a faster answer than to give the wrong one >:)
21:10:17dom96yes, or import parentdir/modulename
21:10:25dom96reactormonk: heh
21:10:31Jehan_Same difference. :)
21:10:50dom96Yeah, but I like the way the latter looks :P
21:11:00dom96the former is more practical though
21:11:13Jehan_I prefer the ., subjectively. :)
21:11:30Jehan_Anyhow, that's how I've intuitively arranged my own stuff.
21:12:18Jehan_The related problem of disambiguating vis-à-vis the stdlib is a bit trickier.
21:13:09Jehan_Unless you bury all your modules in a named directory.
21:17:44Jehan_Hmm. It turns out that if I have two identically named modules, even in different directories, the linker is unhappy.
21:18:11Jehan_Because it sees duplicate symbols for the Init and DatInit functions.
21:18:14*ehaliewi` joined #nimrod
21:20:06*Johz quit (Quit: Leaving)
21:20:15dom96Jehan_: hrm, try creating pkgA.babel and pkgB.babel files.
21:20:23dom96they can be empty
21:20:34superfuncI was just reminded why I don't go on hackernews
21:20:40superfuncthat place is such a circlejerk
21:20:42Jehan_dom96: ???
21:20:56Jehan_Not sure how that would help.
21:21:14dom96Jehan_: Yep. The compiler looks for .babel files and then names the resulting .c files based on that IIRC
21:21:25dom96perhaps it also names the C functions based on that
21:21:31*ehaliewicz quit (Ping timeout: 272 seconds)
21:21:54Jehan_Hmm. Even so, I don't necessarily want them in babel packages.
21:22:09dom96it is equivalent to python's __init__.py
21:23:06dom96It's why lib/stdlib.babel exists
21:23:12Jehan_Ideally, I want to compile both foo1/bar.nim and foo2/bar.nim in the same library/application.
21:23:23dom96yeah, you can do that
21:23:28dom96You don't need to use babel at all
21:23:42dom96just create foo1.babel and foo2.babel
21:23:57dom96in the same directory as the foo1 and foo2 directories
21:24:18Jehan_What would they have to contain?
21:24:28dom96Jehan_: nothing
21:24:35Jehan_That doesn't change a thing.
21:24:53dom96superfunc: Is it because of that "You should have used Nix not wrote your own package manager" and the amount of comments that ensued?
21:25:03reactormonksuperfunc, try reddit/r/circlejerk ;-)
21:25:26dom96Jehan_: In that case I don't know.
21:25:28dom96Araq: ^^
21:26:33Jehan_dom96: It's nothing that's an actual problem right now for anything I'm doing, but I think it's a problem that needs to be resolved in the long run.
21:26:44superfuncdom96: yeah
21:26:51dom96Jehan_: I agree.
21:27:08dom96Jehan_: This should be working already.
21:27:12Jehan_Heh. :)
21:27:25Jehan_Well, ideally it should be working without babel files.
21:27:32dom96Jehan_: Otherwise if you end up using two babel packages which contain modules with the same names bad things will happen
21:27:53dom96Jehan_: Yeah, but Araq implemented it this way for simplicity.
21:28:03dom96Jehan_: I tried to convince him otherwise...
21:28:09Jehan_dom96: Heh. :)
21:28:22Jehan_Well, I totally understand the simplicity argument.
21:28:25EXetoCjust qualify the name
21:28:53EXetoCusing unique directory names should be the convention imo
21:28:54superfunc{. rant .} Holy shit, why can't programmers take a moment to consider the fact that creators of projects have actually considered different design tradeoffs and that their(the commentor) off-the-cuff intuition may be shortsighted. Questioning something is fine, but why can't we be less presumptious.
21:29:39fowl{.contextRequest.}
21:29:51dom96superfunc: I wish they would focus on discussing Nimrod/babel, not completely derailing the comments to argue about things which don't interest me.
21:29:58superfuncfowl: hackernews commentary on babel post
21:30:17dom96Meh, I guess it is a bit interesting.
21:30:22Jehan_dom96: Just be happy about getting exposure. :)
21:30:22dom96But still.
21:30:39dom96Jehan_: True. I am :)
21:30:43superfuncIts just not the venue for it
21:30:50dom96fowl: https://news.ycombinator.com/item?id=7938837
21:32:29Jehan_Hmm, things become even more interesting when I have foo/std/module.nim and bar/std/module.nim
21:32:53BitPuffindom96: why
21:33:29dom96BitPuffin: why what?
21:33:37BitPuffindom96: are we on the fornt page
21:33:45dom96BitPuffin: because we are awesome
21:35:21fowlcan i not collapse threads on hn
21:36:07BitPuffindom96: do we have the capability to add multiple repos?
21:36:12Jehan_fowl: Negative.
21:36:28BitPuffindom96: sucks a bit to have ta link to a json file
21:36:38AraqJehan_, dom96 well I have a test case for that
21:36:46Araqtests/manyloc/packages
21:36:57dom96BitPuffin: package repos?
21:37:09BitPuffindom96: yeah
21:37:10Jehan_Araq: Hmm, I'm open to the suggestion that I'm doing something wrong, but I'm not seeing what it may be. :)
21:37:14dom96BitPuffin: babel update http://myjsonfile.json
21:37:34BitPuffinlike if I had a company and would have a repo for internal libs
21:37:35fowloh really
21:37:40*fowl starts his own babel repo
21:37:48BitPuffindom96: well it would be nice if you could create an alias for the repo
21:38:00BitPuffinand even have some authentication :P
21:38:09Araqhmm well this lacks the .babel files
21:38:31AraqI guess this test doesn't work since quite some time
21:38:57BitPuffindom96: lol, use babel as an excuse to try nimrod
21:38:59BitPuffinso confident
21:39:01Araqanyway, add you need to add package.babel files and then I can't see why it shouldn't work
21:39:02BitPuffinabout babel
21:39:05BitPuffinbut not nimrod
21:39:07BitPuffin:P
21:39:31Jehan_Araq: The test doesn't compile for me.
21:40:17AraqJehan_: yeah but add package1/foo.babel
21:40:35dom96BitPuffin: Pipe your feature requests to babel's issue tracker ;)
21:40:42Jehan_Oh, they need to go inside that directory? O…kay.
21:41:02dom96fowl: with blackjack and hookers?
21:41:03dom96:P
21:41:13fowlyes
21:41:21AraqJehan_: does it work then?
21:41:23fowlmatter of fact forget the repository and the blackjack
21:41:34Jehan_Hmm, now it names the C files in nimcache properly, but there's still a conflict with the Init/DatInit functions.
21:41:40dom96Jehan_: Araq: oh my bad, I couldn't remember which it was, inside the directory or not lol.
21:41:56dom96Shouldn't have assumed the other possibility was unlikely.
21:42:10BitPuffindom96: well this is not really for me
21:42:11dom96fowl: :)
21:42:19Jehan_duplicate symbol _HEX00strutilsInit in:
21:42:19Jehan_ tests/manyloc/packages/nimcache/p2_strutils.o
21:42:19Jehan_ tests/manyloc/packages/nimcache/p1_strutils.o
21:42:19Jehan_duplicate symbol _HEX00strutilsDatInit in:
21:42:19Jehan_ tests/manyloc/packages/nimcache/p2_strutils.o
21:42:19Jehan_ tests/manyloc/packages/nimcache/p1_strutils.o
21:42:28BitPuffindom96: this is just for companies who'd want to use babel as a tool to manage packages internally
21:42:30BitPuffinit makes sens
21:42:33BitPuffinif you are more than one guy
21:42:37Jehan_I created package1/p1.babel and package2/p2.babel
21:42:54BitPuffinwell it actually does make sense if you are more than one guy
21:43:01BitPuffinbecause you might have more than one computer
21:43:08Araqwhat's _HEX00 ?
21:43:32Jehan_Araq: Dunno, I just used your test.
21:43:34fowlBitPuffin, one guy might have more than one computer
21:43:50Jehan_The one in manyloc/packages
21:44:02Jehan_Added the aforementioned babel files and that is what I got.
21:44:21Jehan_Did it perhaps fail to copy the package name in there?
21:44:29BitPuffinfowl: " BitPuffin | because you might have more than one computer"
21:44:42Araqwell I get the same on my machine
21:44:48fowlBitPuffin, if you are more than one guy
21:44:48fowl<BitPuffin> because you might have more than one computer
21:44:55Jehan_I.e. HEX00 = empty string?
21:45:14BitPuffinfowl: what are you talking about
21:45:15Araqyeah something like that
21:46:02*superfunc quit (Ping timeout: 245 seconds)
21:46:03Jehan_Out of curiosity, why not just SHA1 the path or something to disambiguate?
21:46:17*BitPuffin is now known as FowlSucks
21:46:26*FowlSucks is now known as BitPuffin
21:47:09AraqJehan_: then the people complain who put the .c files in some .sh script for building things
21:47:11*superfunc joined #nimrod
21:47:19Jehan_I see.
21:47:28*pafmaf joined #nimrod
21:47:29Araqalso what's the "path"?
21:47:37Araqit needs to be relative
21:47:45Araqand then you need to decide relative to *what*
21:48:06Araqhence the package.babel solution in the directory of interest
21:48:14Jehan_Make it absolute, choose the inode, just something that uniquely identifies it. :)
21:48:28Jehan_But I see the benefits of the .babel solution.
21:48:31Araqnot portable across machines
21:48:44EXetoCc files in shell scripts? wonderful
21:48:56AraqEXetoC: c *filenames*
21:50:03Jehan_Hmm, using a different example, it works properly.
21:50:22*shodan45 quit (Quit: Konversation terminated!)
21:50:48Araqcgen.getSomeInitName() is responsible for it
21:51:41Araqbut that only means the package name is weird
21:51:55Araqso grep for skPackage and see why it's screwed
21:59:38Jehan_Why is getIdent operating on cstrings???
22:00:42Araqthere is also an overload for 'string', I think
22:00:53Jehan_Yes, but it calls the cstring implementation.
22:01:14Jehan_I'm wondering if the bug has anything to do with that.
22:01:25Araqunlikely
22:01:39Jehan_Since it looks suspiciously like a cstring being processed incorrectly.
22:02:07Araqccgutils.mangle
22:02:27Araqaccess name[0] even though name.len == 0 and this is allowed in nimrod
22:02:35Araqfor convenience
22:02:39*superfunc quit (Ping timeout: 240 seconds)
22:02:45Araqso it produces HEX00
22:02:58Araqthat's how an empty string gets mangled
22:03:18Araqnothing mysterious here
22:03:30Araqthe question is why is the f*ing package name empty
22:03:50Jehan_Heh. :)
22:04:16*pafmaf_ joined #nimrod
22:04:22*pafmaf quit (Ping timeout: 245 seconds)
22:05:05*Joe_knock joined #nimrod
22:05:12Jehan_The example that worked for me had another directory nesting level.
22:05:54Jehan_But the problem is that it finds the names properly for purposes of naming the .c files.
22:09:19Araqoh joy we have when noTimeMachine: in the compiler dealing with macosx's time machine
22:13:11*flaviu joined #nimrod
22:17:02Jehan_Hmm, I think I may have it.
22:17:23Jehan_Eh, no.
22:17:39milosnhmmm
22:19:41Jehan_For some reason, the compiler doesn't find the package files initially.
22:22:15Jehan_And that's because walkFiles fails ...
22:22:53Jehan_Which is because the path isn't normalized.
22:31:10Araqah, makes sense
22:31:25Jehan_Okay, I got it. I think.
22:31:50Jehan_In newModule, fileIdx.toFilename is called instead of fileIdx.toFullPath
22:33:21*Demos joined #nimrod
22:37:35Jehan_Araq: Probably want to do some more testing for it, but I'll submit a pull request so that you can try it out yourself.
22:39:44Araqsure thanks
22:40:36Jehan_I'm mostly not sure if replacing toFilename with toFullName doesn't break something else in newModule.
22:47:02*flaviu quit (Remote host closed the connection)
22:47:39*pafmaf_ quit (Quit: This computer has gone to sleep)
22:49:33Joe_knockHi Nimz
22:49:46Joe_knockdom96: You hit front page of HN :D
22:51:30Jehan_God, I hate Git.
22:52:07Joe_knockJehan_: Why?
22:52:18Jehan_A version control system that only Linux kernel developers can love. :)
22:54:02Joe_knockJehan_: The thing I don't get about Git is the remote-hosting part. It isn't very clear to me (yet) how git can be used successfully when developing locally, without the need to "git push" to somewhere
22:54:30Jehan_That I don't have a problem with.
22:55:30fowlgit is not intuitive
22:56:26Joe_knockfowl it's only until I take the time to play around with another VCS, that I will either move to that or stay with Git. Right now, it's convenient.
22:56:31Jehan_fowl: The thing is, I understand the git model. Heck, I've written enough scripts to use the darn thing programmatically.
22:56:36Jehan_It's still full of tripwires.
22:57:24fowlit confuses the hell out of me
22:57:32Jehan_And yeah, I'm still moping over Canonical largely abandoning Bazaar.
22:58:41Jehan_fowl: My preference list right now is something like: Bazaar (in a hypothetical, cleaned-up and fixed state) -> Mercurial -> Fossil -> Subversion -> Git -> CVS.
22:59:11Joe_knockI'm looking for one where everything is centralized and jumping between versions is as easy as: <command> prev
23:01:30dom96Joe_knock: Yeah :D
23:01:44Jehan_Joe_knock: Hmm, I don't want things to be centralized.
23:01:58Jehan_I like it that I can do experimental stuff that I can throw away if it doesn't work out.
23:03:48Joe_knockJehan_: Centralized, meaning that I don't need to "git push" to anywhere. My system is where VC happens and it doesn't care about a remote master.
23:04:17Jehan_Joe_knock: Well, then you don't need to push.
23:04:51Joe_knockisn't git push part of their structure? The instructions were verbose to me.
23:05:09Jehan_For my personal projects, I use "hg push" mostly as an incremental backup thing.
23:05:21Jehan_Joe_knock: Only if you want to share with someone else.
23:05:37Jehan_push/pull basically mirrors changes to/from another repository.
23:05:41Jehan_To keep them in sync.
23:05:56Jehan_If your only repository is on your computer, you don't need it.
23:06:32fowlindeed you can just commit to it til you're ready to put it on github, then push and all your commits show up
23:06:50*Jesin quit (Remote host closed the connection)
23:07:51*Demos quit (Ping timeout: 244 seconds)
23:12:01*askatasuna joined #nimrod
23:16:42*xenagi joined #nimrod
23:17:47*flaviu joined #nimrod
23:18:03flaviudom96: A guy on reddit says your site isn't very good on mobile
23:18:19*xenagi quit (Read error: Connection reset by peer)
23:18:37*xenagi joined #nimrod
23:18:59*xenagi quit (Client Quit)
23:19:37flaviuI'm not sure what he's talking about though, it looks good to me in the different screen simulator
23:21:22*xenagi joined #nimrod
23:22:52dom96flaviu: There are issues with some phones IIRC
23:22:56flaviuOh, I see. Anything greater than 360px is considered a desktop and not scaled correctly
23:22:56dom96But I wouldn't say it's impossible
23:23:33fowlconsidering that "mobile" means one of 20,000 phone models out there
23:24:09flaviufowl: I can reproduce on the simulator, its a broad issue
23:24:29flaviuBug in the CSS code, not people's browser
23:25:28flaviudom96: Simple fix: `s/width: 980px/max-width: 980px/g`
23:25:34*hoverbear quit ()
23:26:18dom96flaviu: what simulator are you using?
23:26:24flaviuFirefox
23:27:00*vendethiel- joined #nimrod
23:28:31*vendethiel quit (Ping timeout: 244 seconds)
23:28:35dom96oh yeah, Firefox didn't have that when I was working on this site :P
23:31:26dom96flaviu: fixed, thanks.
23:31:39flaviuDon't forget to let the guy know
23:31:55dom96I did.
23:33:09flaviudom96: It doesn't seem to have shown up. All I see is "What phone are you using? It looks fine on my Samsung Galaxy Ace"
23:33:22dom96Refresh
23:33:24flaviuOh, it just did
23:33:45flaviuI guess reddit has some latency, I did, but it just now showed up
23:39:30*io2 quit ()
23:48:37*goobles quit (Ping timeout: 246 seconds)
23:53:50*springbok quit (Ping timeout: 244 seconds)
23:54:06*askatasuna quit (Remote host closed the connection)