<< 19-08-2016 >>

00:18:19*endragor joined #nim
00:20:13*der-landgraf quit (Quit: WeeChat 1.5)
00:23:15*endragor quit (Ping timeout: 264 seconds)
00:28:19*der-landgraf joined #nim
00:32:17*libman quit (Quit: Leaving.)
00:46:54*yglukhov joined #nim
00:50:08*der-landgraf quit (Quit: WeeChat 1.5)
00:51:21*yglukhov quit (Ping timeout: 250 seconds)
00:51:26*gokr quit (Ping timeout: 244 seconds)
00:55:03*mcc joined #nim
00:55:15*endragor joined #nim
00:59:32*endragor quit (Ping timeout: 240 seconds)
01:02:51*brson quit (Ping timeout: 276 seconds)
01:43:32*chemist69 quit (Disconnected by services)
01:43:32*chemist69_ joined #nim
01:50:13*bjz joined #nim
02:02:20*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
02:03:37*bjz joined #nim
02:09:12*yglukhov joined #nim
02:15:27*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
02:15:43*yglukhov quit (Ping timeout: 252 seconds)
02:30:11*User joined #nim
03:09:38*apollo joined #nim
03:20:15*User quit (Ping timeout: 265 seconds)
03:21:46*User joined #nim
03:37:54*der-landgraf joined #nim
03:45:22*der-landgraf quit (Quit: WeeChat 1.5)
03:47:01*chemist69_ quit (Ping timeout: 258 seconds)
03:49:16*User_ joined #nim
03:49:43*User quit (Read error: Connection reset by peer)
03:55:40*pregressive joined #nim
04:00:54*pregressive quit (Ping timeout: 244 seconds)
04:01:36*pregressive joined #nim
04:03:54*chemist69 joined #nim
04:04:43*nairobi joined #nim
04:08:48*nairobi quit (Ping timeout: 244 seconds)
04:13:08*Trioxin joined #nim
04:13:18*apollo quit (Ping timeout: 244 seconds)
04:13:45*yglukhov joined #nim
04:18:09*yglukhov quit (Ping timeout: 260 seconds)
04:20:28*pregressive quit (Remote host closed the connection)
04:28:02mccWhat is the recommended way in Nim of iterating over a range?
04:28:20mccLike, say I have an array, and I want to iterate over all numbers from 0 to (theArray.len-1)
04:28:30mccin python i'd say for x in range(theArray.len)
04:30:51*Trioxin quit (Quit: Konversation terminated!)
04:34:44mcc...okay, i'm finding the "for i in 0..4" idiom is used in code samples in the manual, but is not documented, for exmaple it is not in the for loop section
04:35:18mccis "for i in 0..4" inclusive on 4?
04:39:04*User_ quit (Read error: Connection reset by peer)
04:40:50*User joined #nim
04:45:54*desophos joined #nim
05:04:02*endragor joined #nim
05:16:39*User quit (Ping timeout: 265 seconds)
05:17:01*GustavoLapasta joined #nim
05:33:53mccguess so
05:48:45*nairobi joined #nim
05:52:52*nairobi quit (Ping timeout: 240 seconds)
06:06:24*nairobi joined #nim
06:09:40chemist69yes, if you want exclusive behaviour, you can use 0 .. <4
06:10:47*nairobi quit (Ping timeout: 265 seconds)
06:12:25mccoh, neat
06:18:59*yglukhov joined #nim
06:20:56*nairobi joined #nim
06:23:08*yglukhov quit (Ping timeout: 244 seconds)
06:28:14*nairobi quit (Ping timeout: 260 seconds)
06:30:32*pafmaf joined #nim
06:31:56*desophos_ joined #nim
06:32:20*nairobi joined #nim
06:35:31*desophos quit (Ping timeout: 265 seconds)
06:40:49*nairobi quit (Ping timeout: 252 seconds)
06:42:18*delian66 joined #nim
06:49:25*gokr joined #nim
06:56:07*Demon_Fox quit (Quit: Leaving)
07:15:46*gokr quit (Read error: Connection reset by peer)
07:18:00*Arrrr joined #nim
07:18:00*Arrrr quit (Changing host)
07:18:00*Arrrr joined #nim
07:27:46Arrrrwtf
07:27:49Arrrrlet i? = 0 # Error: invalid visibility: '?'
07:27:51ArrrrIs this bug?
07:28:20ArrrrIn a different context i got 'Error: 'export' is only allowed at top level'
07:29:06*Trustable joined #nim
07:35:20*gokr joined #nim
07:44:27*gokr quit (Read error: Connection reset by peer)
07:50:11*brechtm joined #nim
07:50:22*GustavoLapasta quit (Quit: Leaving)
08:06:38*gokr joined #nim
08:09:50euantormcc: I believe you can also do `for a in arr:`
08:10:07euantorAlso, the `1..10` range iterator is documented here: http://nim-lang.org/docs/tut1.html#control-flow-statements-for-statement
08:33:28*brechtm_ joined #nim
08:33:40*bjz joined #nim
08:36:34*brechtm quit (Ping timeout: 260 seconds)
08:46:32*yglukhov joined #nim
08:46:55*brechtm joined #nim
08:47:40*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
08:49:43*brechtm_ quit (Ping timeout: 244 seconds)
08:54:29dyce_hmm im trying to run a binary but docopt keeps claiming i have incorrect input. but it happens to work fine if the binary is built on the same system.
08:57:23*mcc quit (Quit: Connection closed for inactivity)
09:00:53*Sembei quit (Max SendQ exceeded)
09:02:01*Sembei joined #nim
09:05:28*bjz joined #nim
09:19:10*rbergmair joined #nim
09:36:10*nairobi joined #nim
09:48:50*GustavoLapasta joined #nim
09:49:30*nairobi quit (Remote host closed the connection)
09:50:04*nairobi joined #nim
09:59:05*M-Quora quit (Remote host closed the connection)
09:59:06*M-max quit (Remote host closed the connection)
09:59:06*Flox42 quit (Remote host closed the connection)
10:04:52GustavoLapastaif I run this:
10:04:53GustavoLapastaimport times
10:04:54GustavoLapastavar timeStrings = [
10:04:54GustavoLapasta "Wed Aug 17 19:46:36 2016",
10:04:54GustavoLapasta "Mon Aug 01 03:31:04 2016",
10:04:54GustavoLapasta "Tue Jul 26 00:45:19 2016"]
10:04:55GustavoLapastafor t in timeStrings:
10:04:57GustavoLapasta echo repr(t.parse("ddd MMM dd HH:mm:ss YYYY"))
10:05:23GustavoLapastai get yearDay=231 on all the three dates. Is it a feature or an issue?
10:05:46*Flox42 joined #nim
10:06:25*nairobi_ joined #nim
10:06:45*nairobi quit (Read error: Connection reset by peer)
10:08:10GustavoLapastatried on Win10 and Ubuntu, same result
10:09:19flyxGustavoLapasta: please do not paste that much lines into IRC. use a paste service like gist. this helps other people copy-pasting and testing your code
10:09:55GustavoLapastaYeah I thought 7 lines wasn't that much... ok I got it
10:10:03*miere joined #nim
10:11:16ArrrrIt is hard to test the code with the added lines "12:05:22 GustavoLapasta"
10:11:17*nairobi_ quit (Remote host closed the connection)
10:11:54*nairobi joined #nim
10:11:58*nairobi quit (Remote host closed the connection)
10:12:55*nairobi joined #nim
10:12:57*nairobi quit (Remote host closed the connection)
10:13:11*nairobi joined #nim
10:13:24GustavoLapastaMy apologies, here's the pastebin: http://pastebin.com/15KAGyZK
10:14:11flyx231 is 18.8. or 19.8. depending on leap year, so it is wrong in all cases
10:16:00flyxah no, it's 0-based, so it would be valid for the first date if we did not have a leap year in 2016
10:16:20*nairobi quit (Remote host closed the connection)
10:17:42*nairobi joined #nim
10:19:18flyxit seems to me that times.nim's parse() simply does not set the yearday
10:19:39flyxGustavoLapasta: you may want to open a GitHub issue (or fix it yourself and create a pull request)
10:20:23*nairobi quit (Read error: Connection reset by peer)
10:21:46GustavoLapastaI tried to goo through the times.nim sources, but I'm not up to speed yet.
10:21:59GustavoLapastaI'll open an issue.
10:23:36flyxthe fix may be as straightforward as this line for the weekday: https://github.com/nim-lang/Nim/blob/master/lib/pure/times.nim#L1265
10:33:33*pafmaf quit (Ping timeout: 240 seconds)
10:34:46*GustavoLapasta quit (Ping timeout: 265 seconds)
10:35:08*GustavoLapasta joined #nim
10:37:02flyxGustavoLapasta: since I'm ill and have nothing better to do, here: https://github.com/nim-lang/Nim/pull/4629
10:49:24GustavoLapastawell, that was fast. ty flyx
10:59:34flyxand now for something completely different: is exception handling supported on the JS backend? Nim tells met that getCurrentException() is not available
11:00:28flyxthat seems strange since JS does support exceptions
11:06:08*brechtm_ joined #nim
11:09:24*brechtm quit (Ping timeout: 260 seconds)
11:20:49gokrIdiotic questio: Syntax for last element in seq? I thought it was [^1] but... the js backend seems to have issues with that
11:30:34*Calinou joined #nim
11:34:56Calinouhi, just wondering how come Nim is very fast in a benchmark I've written: https://gist.github.com/Calinou/5f69cf81c0f42d8ffd5ae64e17890a51
11:35:02Calinouit's a very superficial benchmark but still
11:35:10Calinouthe result is correct, I've checked
11:35:14chemist69gokr: can you fallback to [s.len-1] ?
11:35:41gokrYeah, sure - just wondered
11:35:51gokrIt worked before I am quite sure.
11:35:58*GangstaCat joined #nim
11:35:58Calinouhere's the code: https://gist.github.com/Calinou/0d8a4bf27914961792ee19c807bd89f3
11:36:08Calinou(other languages use a very similar implementation, just with different syntax)
11:37:30chemist69gokr: in the C backend the `^1` syntax still works (on devel)
11:37:51gokrCalinou: Why are you surprised? I mean... trivial code like this probably ends up being basically exactly like in C.
11:37:56*PMunch joined #nim
11:37:57gokrchemist69: Yep, I know :)
11:38:08Calinougokr: but my C implementation is twice as slow :P
11:38:19Calinoutested with both GCC and Clang
11:38:26CalinouC++ gives the same performance, so I merged the entries
11:38:30euantorI assume the C implementation is pretty much the same?
11:38:31gokrCalinou: Did you verify compiler options are the same?
11:38:48Calinouah, I didn't specify any -O parameter when calling gcc/clang
11:39:19Calinouhttps://gist.github.com/Calinou/7dfe3e8d2a28b59c96a8699cc6191e7e
11:39:21Calinouthis is the C one
11:39:25gokrchemist69: Btw, I just updated my Spry REPL, find it fascinating that it works at all :) http://www.sprylang.org/repl/index.html
11:40:04gokrNot specifically for you chemist69 of course, just if you were curious what I am doing.
11:40:25chemist69gokr: no, I know, I follow your blog.
11:40:30gokrOh, cool.
11:40:47Calinouyeah you're right, I had to specify -O3
11:40:52Calinounow gcc beats Nim ;)
11:40:54Calinou(0.27s)
11:41:11gokrI am chewing along trying to get the manual complete for Spry, and doing so I keep ending up hacking on details :)
11:41:22gokrBut its an interesting journey.
11:41:34chemist69bbl, have to catch a train.
11:41:39gokrSure, cya
11:44:27*GustavoLapasta quit (Quit: Leaving)
11:46:40Calinouupdated table: https://gist.github.com/Calinou/5f69cf81c0f42d8ffd5ae64e17890a51
11:47:04euantorThat looks a bit more normal
11:47:07*desophos_ quit (Read error: Connection reset by peer)
11:47:07Calinouyeah
11:47:14euantorI wonder what Rust's doing that's slowing it down...
11:47:37euantorSame with CLang
11:47:53Calinouyeah, Clang is supposed to give near-GCC performance usually
11:48:08euantorIt usually does in my experience
11:48:16Calinouguess it works better on more complex programs
11:48:23*brechtm_ quit (Remote host closed the connection)
11:49:01Calinouthe benchmark is 139 times faster with C++ (GCC) than Python 3.5.2 :P
11:49:23*bjz_ joined #nim
11:49:36euantorI'm quite surprised at how much slower Python 3 is than Python 2
11:49:39*brechtm joined #nim
11:49:57CalinouI've done another benchmark in the past (on a slightly more complex program) and it was also quite slower
11:50:34*bjz quit (Ping timeout: 250 seconds)
11:50:52Calinouhttp://benchmarksgame.alioth.debian.org/ doesn't have Nim :(
11:56:50*pafmaf joined #nim
12:01:46Calinoudoes Nim have threading support? (for writing parallel programs, for example)
12:02:50cheatfateCalinou, Nim has threading and async support
12:02:57Calinouok :)
12:05:22Calinouis there an official (or otherwise popular) style guide for Nim? eg. snake_case vs camelCase, indentation…
12:05:52euantorIndentation = 2 spaces, tabs not allowed (the compiler won't allow tabs)
12:06:06euantorsnake_case and camelCase are the same in Nim
12:06:19euantorSo you can define a proc in snake_case and call it in camcelCase
12:06:43euantorhttps://github.com/nim-lang/Nim/wiki/Style-Guide-for-Nim-Code
12:08:00*Arrrr quit (Quit: WeeChat 1.5)
12:11:41*PMunch quit (Quit: leaving)
12:17:05*michael_campbell quit (Quit: Textual IRC Client: www.textualapp.com)
12:18:00Calinouhow's the cross-compiling support of Nim? can I realistically compile a Windows binary from a Linux box, for example?
12:19:05euantorYep: http://nim-lang.org/docs/nimc.html#cross-compilation
12:19:20euantorFailing that, you can compile the Nim code to C and ship that
12:21:26*michael_campbel- joined #nim
12:22:06*michael_campbel- is now known as michael_campbell
12:22:38Calinouhttps://gist.github.com/Calinou/a7c8d47aa174f7a1d360210d05a66b45
12:22:41Calinoudoesn't seem to work here
12:22:50CalinouI do have mingw64 installed
12:23:18euantorI seem to remember seeing a bug report for that, @Araq would know
12:23:37cheatfateCalinou, you are using --cpu:i386 and using 64bit nim
12:24:09Calinouright
12:25:13gokrThat error message could indeed hint about that - it's a classic.
12:25:28Calinouyes, I'm on 64-bit Linux, using Arch's nim package
12:25:33euantorOr just error out when you try it straight away
12:26:02gokrHas of course already been discussed: https://github.com/nim-lang/Nim/issues/3258
12:26:31gokrSo yeah, the error message is from the C compiler so... well, one could of course look for that specific error in the output and give a hint.
12:27:02euantorExcept the output is different for different compilers
12:27:06gokryup
12:27:12euantorSo fixing it would be a PITA
12:27:14gokryup
12:28:50cheatfategokr, Nim don't know arch of target compiler...
12:29:23gokrNo, but.. we drive the C compiler so we could check its output for certain known common errors.
12:29:45gokr(usually we - as in the Nim compiler - does)
12:30:29*M-Quora joined #nim
12:30:36*M-max joined #nim
12:48:35*nairobi joined #nim
12:55:30*nairobi_ joined #nim
12:59:15*nairobi quit (Ping timeout: 264 seconds)
13:07:31*bjz joined #nim
13:07:34*bjz_ quit (Ping timeout: 250 seconds)
13:09:56*ftsf joined #nim
13:10:09*bjz quit (Client Quit)
13:10:25*bjz joined #nim
13:12:04*bjz quit (Read error: Connection reset by peer)
13:13:38*bjz joined #nim
13:20:18*GangstaCat quit (Quit: Leaving)
13:20:50federico3def-: weren't you working on https://github.com/def-/nim-benchmarksgame to have the tests added to Alioth?
13:21:18def-federico3: nope, the official benchmarks don't want additional languages
13:21:29def-so i just ran it for myself
13:29:49*endragor quit (Remote host closed the connection)
14:00:21*GangstaCat joined #nim
14:10:08*xet7_ joined #nim
14:10:21*xet7_ quit (Client Quit)
14:54:20*brechtm quit (Remote host closed the connection)
14:57:47michael_campbellThat seems rather short-sighted of them.
15:03:19*brechtm joined #nim
15:27:40Calinouis there a tool to generate HTML documentation from Nim code with docstrings?
15:28:33flyxCalinou: nim doc2 <foo>
15:28:50Calinouthanks
15:36:29kierif I take a slice of a non-var seq, does it perform a copy?
15:36:49*brson joined #nim
15:37:32*elrood joined #nim
15:40:42flyxkier: yes
15:40:44*fredrik92 joined #nim
15:42:33flyxkier: unless you use them within a parallel statement
15:43:58*pafmaf quit (Quit: Leaving)
15:51:40*xet7 quit (Quit: Leaving)
15:54:23*nicanaca0 joined #nim
15:58:43Calinoubtw, are there plans to redesign the current official site? it's not really in today's web design trends (skeuomorphism) and not it's not responsive design
15:59:10CalinouI guess this would mostly be a CSS change
16:01:00flyxskeuomorphism should be nuked from orbit
16:01:41flyxthankfully, Scott Forstall left Apple and his skeuomorphism with him.
16:01:57flyxerm. anyway. there was some discussion on it in the forums
16:02:08flyxit is a controversial topic
16:02:21*libman joined #nim
16:02:54federico3+1 flyx
16:04:22Calinouflyx: well, site kind of looks like it was designed in 2011 or so :P and since webdesign moves very fast…
16:07:21flyxCalinou: I myself approve of everyone getting actual work done rather than updating the whole website every time a new JS framework emerges
16:07:38Calinouwell, great sites work without JS so… :)
16:07:51Calinou(or use it minimally, thus no framework needed)
16:11:23*brechtm quit (Remote host closed the connection)
16:11:39*nairobi_ quit (Remote host closed the connection)
16:12:44flyxCalinou: there was a bit of discussion in this thread: http://forum.nim-lang.org/t/2247#13707
16:12:49flyxthere were also earlier threads
16:13:53Calinou"As chat they use http://gitter.im/ instead of the "dated" IRC." -> I disagree on that though… :/
16:14:02Calinoureplacing new site is acceptable, going full proprietary hipster is not
16:14:38flyxwhat buffles me is that critism is often phrased like „website is looking like from $someYear“ instead of listing objective points of critism which can be adressed. some users answered with some interesting points
16:16:04Calinouhttps://www.gnu.org/software/guile/
16:16:20Calinoulooks quite nice, still succeeds in not being "too much" into current threads
16:16:28Calinoucode examples are made very obvious
16:17:18flyxwell I strongly dislike this design. preference varies.
16:17:32flyxas I said, it is a controversial topic
16:19:13flyxbut Araq asked for volunteers for a new website design in that thread, so if you want to impress us with a better design, go ahead
16:20:57Calinouright
16:23:08flyxI guess that no-one wants to do it because we are a bunch of folks with strong opinions who are hard to satisfy ^^
16:23:27CalinouI know what it is like, to design a site for an open source project with difficult devs :P
16:36:34*miere quit (Ping timeout: 250 seconds)
16:38:47dom96hey Calinou!
16:38:56elroodwhat'd bug me more than some design-bikeshedding is how unorganized the site feels, how difficult it is to navigate and find what one is looking for and the lack of a kind of interface or overview for available nim(ble) libraries and packages
16:39:17dom96A new design would be awesome.
16:39:25dom96So if you've got time go for it.
16:39:38euantorYes. The biggest problem right now is how badly it works on mobile
16:39:40*nsf quit (Quit: WeeChat 1.5)
16:39:46dom96elrood: agreed
16:40:13dom96I also now think that we just need something simple.
16:40:49dom96The current website makes sense for a video game (or similar) and it looks nice for that purpose.
16:41:17euantorI like the simple design of sites for languages like Guile, Rust, Go, etc.
16:41:25dom96And it's certainly an improvement over the previous Nim site..
16:41:34euantorThey convey the concepts and advantages of the languages clearly and simply
16:42:03euantorThe Python site does its job well too
16:42:29Calinouhi dom96
16:42:42Calinoudom96: do I know you from somewhere? :P
16:42:58dom96Calinou: dunno, your name doesn't ring a bell
16:42:58Calinouelrood: yes, a site akin to npm for Nimble packages would be awesome
16:43:05Calinouright
16:44:01dom96elrood: there is work happening towards a package site, not sure if the person wants to make it public yet though so I won't mention their name :)
16:44:15Calinoupython.org is not flat design, but still looks relatively good, also it's responsive
16:44:51dom96I was considering grabbing a simple CSS framework like skeleton and creating something quick myself.
16:44:54euantorI've worked on and off on a packages site a bit
16:45:14euantorI like the way D handle it too, theirs is very simple but gets the job done
16:45:21Calinoudom96: I've used Pure on another site, it's a quite good framework, still lightweight
16:45:24dom96(It's on my to do list at least, but I doubt I will get around to it and my design skills aren't exactly great)
16:45:26Calinouthis: http://purecss.io/
16:45:27euantorhttps://code.dlang.org
16:46:13dom96euantor: Sure, it would be nice to even have something simple right now. Even something that builds docs for each package would be brilliant.
16:46:28euantorI was also looking at doing that
16:46:48euantorI've got a pretty free weekend this weekend, I'll try and get some more work done
16:46:53dom96Calinou: looks good, but I don't like the buttons :P
16:48:08dom96gradients are so 2011
16:49:33*Vladar joined #nim
16:50:04dom96But actually I think that the responsive grid that these frameworks provide is most important
16:50:13dom96and there isn't much difference between them really
16:51:29*endragor joined #nim
16:51:38Calinoua good navigation bar can also boost your productivity quite a bit
16:51:46Calinouand prevents googling for "CSS dropdown" ;)
16:52:45dom96For simplicities sake I don't think you need a drop down
16:52:51dom96just a list of major links
16:52:59dom96like we have currently
16:53:49Calinouyeah, not all sites require a dropdown in their navigation
16:55:26libmanI think Nim can easily win benchmarks like https://github.com/nanoant/WebFrameworkBenchmark (or at least beat Go fasthttp) with some effort, but I'm not the person to do it... :/
16:55:43*endragor quit (Ping timeout: 252 seconds)
16:56:21Calinoulibman: but does it beat Go Iris? ;)
16:56:28Calinouhttps://github.com/kataras/iris
16:56:40Calinouguy makes a Go framework, claims it to be the fastest ever
16:56:46Calinouthat's a way to generate controversy for sure
16:57:33libmanWe should look at impartial benchmarks, the most venerable one being TechEmpower.com/benchmarks/
16:58:11Calinoualso, I'm surprised Nim is that slow in that benchmark
16:58:14libmanOf course it to a great degree depends on the effort someone puts in into prepping for these benchmarks, but that's still an important indicator.
16:58:15Calinouconsidering it seems to be quite fast for system use
16:59:47libmanNim needs to do what Oracle did, tune for performance and make the case that choosing Nim is good for the bottom line.
17:00:15*libman wants to start a non-profit company offering competitively priced software products and services based around a specific Copyfree stack, paying decent salaries with benefits, holding on to some cash to keep afloat even if the market tanks for a few years, but contributing much to further the development of the Copyfree components it leverages.
17:00:50Calinouit's usually easier to sell copylefted software than permissively licensed software
17:01:01Calinoubecause you can sell exceptions, and you prevent the competition from making proprietary forks
17:01:01dom96it's what happens when you've got dozens full-time employees optimising things to death
17:01:25libmanOracle has integrated and tuned Oracle Linux + Oracle Database + J2EE + Oracle App Server + various Oracle App Suites to work together very well. That's why they have the #1 market share and Big Biz is paying $23,750 per processor core for their DB alone.
17:02:08dom96and then you've got people who say "well, why shouldn't I use Go? Its got Google behind it, i'll just improve this thing here that bothers me about it"*1000
17:02:26libmanCalinou: it's even easier to rob banks. But I was put on this earth to create beautiful things. :P
17:02:37Calinoulibman: me too, I would love to work on open source professionally
17:02:50dom96and not only does Go have full-time employees but also a large community that improves it for free.
17:03:09federico3euantor?
17:04:01libmanI will someday live on a software-driven space station declaring independence from earth, and have software-driven nanobots keep me fit at age 300. Its very important to draw a line against restrictive licenses now before it's too late.
17:05:07libmanFreeBSD + PostgreSQL + Copyfreelang + Bigstackofsoftwarewrittenincopyfreelang...
17:05:17Calinouwe should write a wiki page, "Go vs Nim", I think
17:05:24Calinouwe have a Python vs Nim comparison, and C vs Nim
17:05:53libmanSource code comparisons tell much of the story. Nim has a much better syntax.
17:06:03*nairobi joined #nim
17:06:10CalinouI love indent-based syntax personally, which is why I've come to Nim :P
17:09:27libmanAraq: if you get to sit between Bjarne Stroustrup and Ron Pike (and some Mozilla kid who did Rust), what do you wear? :P
17:09:37libmanhttps://www.youtube.com/watch?v=ynQoaajojIs
17:10:42*nairobi quit (Ping timeout: 276 seconds)
17:11:14*nairobi joined #nim
17:11:26libman*Rob
17:12:01dom96In case you guys didn't see, Nim in Action is 50% off: http://forum.nim-lang.org/t/1978/15#15364
17:12:07dyce_hmm im trying to run a binary but docopt keeps claiming i have incorrect input. but it happens to work fine if the binary is built on the same system.
17:12:31*miere joined #nim
17:13:13*endragor joined #nim
17:14:33dom96dyce_: what's the difference between the two systems?
17:14:34kierdyce_: I was having a problem with docopt the other day, could be related
17:14:55dom96yeah, make sure the two systems have the same version of docopt
17:15:39kierI found that docopt would just print the usage string no matter what command line args you gave it. Not sure exactly what the problem was but it was fixed by compiling docopt from the Github master branch rather than using the version from nimble (which is a couple of commits behind)
17:16:09kiercould be that one of your systems has docopt from nimble, and the other has it built from source
17:17:06CalinouI'd love to see something like https://github.com/kbknapp/clap-rs but for Nim, ie. a fully-featured CLI toolkit/argument parser with help and such
17:17:51*endragor quit (Ping timeout: 264 seconds)
17:19:19*yglukhov quit (Ping timeout: 265 seconds)
17:20:51euantor@federico3: sorry, I was eating dinner
17:23:24dyce_kier: yes thats exactly what im dealing with
17:24:40Flox42uahh, just read some articles about guile ... not my cup of tea I think :)
17:27:31kierdyce_: cloning the docopt repo and 'nimble install .' should fix your problem in that case
17:27:58kierin related news, we should poke the docopt.nim maintainer to push the fixed version to nimble
17:28:35dom96kier: dyce_: you can also execute: nimble install docopt@#head
17:28:48dyce_its interesting, i installed them both from nimble, osx seems to work fine
17:28:59kierdom96: oh cool, didn't know about that :)
17:31:11dyce_im using gitlab, it should be possible to have its ci system build ARMv6/7/8 and MIPS ?
17:31:19dyce_just download gcc for each platform?
17:32:12*Trustable quit (Remote host closed the connection)
17:40:13*nairobi quit (Remote host closed the connection)
17:40:50*nairobi joined #nim
17:43:38dom96dyce_: sure, that sounds like it could work.
17:43:46dom96I'm not familiar with Gitlab's CI though
17:45:13*nairobi quit (Ping timeout: 252 seconds)
17:54:21dyce_and for windows i should use wine?
17:54:29dyce_if i am building from linux
17:54:40dyce_dom96: can you also specify instead of head the commit hash?
17:54:52dom96yep
17:54:57dom96or any branch
17:58:49*shodan45 joined #nim
18:01:55cheatfatedom96, i have build nim on windows10 linux :) almost all tests was success
18:06:33*yglukhov joined #nim
18:08:13dom96cheatfate: cool
18:08:26dom96My book's technical proofer just emailed me saying that he couldn't get Nimble to install :\
18:08:37dom96This dependency on the compiler really is a bitch
18:10:59*yglukhov quit (Ping timeout: 244 seconds)
18:11:26libmanI think it should be called "Ubuntu Userland on Windows". There's no Linux kernel involved.
18:12:03libmanBashland :P
18:13:53*yglukhov joined #nim
18:14:46cheatfatelibman, if there no kernel involved how `epoll` works?
18:14:57*xet7 joined #nim
18:15:09libmanThere's a kernel involved, but it's not Linux.
18:15:24cheatfateits no UI linux...
18:15:57cheatfatefully compatible text-only linux
18:16:21libmanWith some kind of System Call Interface translation layer like Interix or something
18:17:43libmanhttp://www.zdnet.com/article/ubuntu-not-linux-on-windows-how-it-works/
18:21:34cheatfateits like wine not windows but much better
18:23:01dom96lol, softpedia reviewed Nim http://www.softpedia.com/get/Programming/Coding-languages-Compilers/Nim-Compiler.shtml
18:23:21libmanAnyone give any thought to Godot wrappers? It can evolve into a universal client-side "app engine", not just "game engine".
18:26:14Flox422.0/5.0 ... why was nim rated so low .... and how did the reviewer came to that low rating?
18:26:30dom96Flox42: good question
18:26:47dom96I'm guessing the reviewer doesn't know much about programming languages
18:27:43dom96I'll email them and ask
18:28:37Flox42the review is more like an introduction to nim listing all the features :)
18:29:12libmans/systems programming language/systems and applications programming language/
18:33:07kier#1 top free alternative is QBASIC, according to softpedia
18:36:54libmanThere are really multiple definitions of "systems" programming. One contrasts with app (or game) programming, but it doesn't strictly mean kernel programming so there's a gray area. The other draws a line based on level of abstraction (ex. static vs dynamic typing, etc). Like writing a Web browser (in C++) is systems programming by the latter definition, even though it's an app.
18:39:13*PMunch joined #nim
18:40:17Calinou"TOP ALTERNATIVES FREE"
18:40:22Calinou"Qbasic"
18:40:43Calinouwell… :P
18:40:50Flox42I would go with that definition:
18:40:51Flox42https://en.wikipedia.org/wiki/System_programming
18:52:57libmanIt doesn't exactly offer one distinct definition.
18:53:45dyce_dom96: can you specify the head in the project.nimble file for the keyword requires?
18:54:15dyce_so that when you run nimble build it will grab the commit hash or head?
19:04:26dom96dyce_: yes, just omit the @
19:04:35dom96docopt#head
19:04:47dyce_and omit the version?
19:05:36dyce_requires "docopt#head >= 0.6.2"
19:10:46*nairobi joined #nim
19:10:54*xet7_ joined #nim
19:12:28*nairobi quit (Remote host closed the connection)
19:14:16*Demon_Fox joined #nim
19:19:26*endragor joined #nim
19:21:28*nairobi joined #nim
19:23:34*_stowa joined #nim
19:24:01*endragor quit (Ping timeout: 265 seconds)
19:26:44*fastrom joined #nim
19:30:40dom96dyce_: yes
19:30:54dom96#HEAD is a version specifier
19:30:55dyce_thanks
19:31:31*_stowa quit (K-Lined)
19:48:19*GangstaCat quit (Quit: Leaving)
20:00:05*yglukhov quit (Read error: Connection reset by peer)
20:00:29*yglukhov joined #nim
20:10:04*libman quit (Ping timeout: 250 seconds)
20:11:36*libman joined #nim
20:15:53*nairobi quit (Remote host closed the connection)
20:17:16*nairobi joined #nim
20:18:25*wan joined #nim
20:22:30*yglukhov_ joined #nim
20:22:30*yglukhov quit (Read error: Connection reset by peer)
20:26:53*xet7 quit (Quit: Leaving)
20:33:10*nairobi quit (Read error: Connection timed out)
20:34:49*Vladar quit (Quit: Leaving)
20:35:03*nairobi joined #nim
20:38:32*yglukhov_ quit (Read error: Connection reset by peer)
20:39:01*yglukhov joined #nim
20:42:15*nsf joined #nim
20:49:39mierecan someone tell me why osproc.startProcess("python -m SimpleHTTPServer") crashes with error "Requested command not found"? Works okay from powershell and cmdline
20:51:03*nairobi quit (Read error: Connection timed out)
20:51:14euantorI'd guess because your path isn't being passed along
20:51:25miereI tried absolute path and still doesn't work
20:51:35euantorOh, not sure then
20:51:44mierethere are execProcess and it's working, but I cannot set working path from this proc
20:51:50*nairobi joined #nim
20:52:21libmanhttp://nim-lang.org/docs/osproc.html#startProcess,string,string,openArray[string],StringTableRef,set[ProcessOption]
20:52:58miereow
20:53:18libmanosproc.startProcess("/usr/local/bin/python", "", ["-m", "SimpleHTTPServer"])
20:53:30miereyep
20:53:34mierethanks a lot
20:53:46miereI was staring in docs and still didn't figured that out T_T
20:54:53SentreenI just checked that review.... so horrible. How you install the compiler now apparantly has an influence on how good the language is, the score given is a 2/5, but no pros and cons are listed at all, wtf
20:55:09libmanI recommend using findExe()
20:56:29*libman recommends a `curl nim.pl/i | sh` installer.
20:56:51*Demon_Fox quit (Quit: Leaving)
20:57:50libman(I told you to register that domain.)
21:00:25dom96FYI you can also just write startProcess("python -m SimpleHTTPServer", options = {poEvalCommand})
21:00:49*Matthias247 joined #nim
21:02:01*libman recommends an x"command" shortcut for that. Golf! :P
21:03:16libmanYou can still get nim.li for Language Installer.
21:05:09libmanLanguage with shortest POSIX sh installation one-liner wins.
21:05:35Xeplease don't curl2bash
21:06:44libmans/ba//
21:07:14libmanb-b-b-but... all the cool kids are doing it!
21:20:33federico3one more reason not to do it
21:33:49*nairobi quit (Remote host closed the connection)
21:36:50*User joined #nim
21:41:47*endragor joined #nim
21:45:05Calinoulibman: which easy installation method do you suggest?
21:45:11Calinouthere's a reason curl2bash is so popular
21:45:32libmanIdeally packages for all OS'es.
21:45:33Calinouproviding packages for every distro is not convenient for developers, and Snap/Flatpak/AppImage all have big flaws, especially for a developer dependency
21:45:58Calinouplease point me to your magical build system for Ubuntu 14.04, Ubuntu 16.04, Fedora 23, Fedora 24, Debian 7, Debian 8, Arch Linux…
21:45:58*endragor quit (Ping timeout: 250 seconds)
21:46:00Calinou:D
21:47:26libmanIt's already in *BSD ports, though needs to be updated ( http://www.freshports.org/lang/nim ; http://openports.se/lang/nim ). That takes care of all the OS'es I care about. :P
21:48:17libmanBut I've seen far more sophisticated install shell scripts than the instructions to git out and build Nim.
21:48:39Calinoulatest Nim version is in Arch Linux repos, that's nice
21:48:56libman(Installing Nimble was a bit more tricky, had to smack it a few times.)
21:49:02Calinouhttps://packages.debian.org/search?keywords=nim -> Debian/Ubuntu has it, too, but only in Debian stretch
21:49:05Calinouand Ubuntu 15.10/16.04
21:49:13Calinoulibman: Nimble is also in Arch packages :D
21:49:20Calinouworks perfectly here, installed a 2D platformer game to test it
21:49:43libmanGood. What about Fakenameobscurebsdnix?
21:49:55CalinouDebian/Ubuntu don't have Nimble (yet) though.
21:50:31libmanIt would be cool if Nimble was able to upgrade Nim and everything.
21:50:45*nairobi joined #nim
21:55:01Calinoudom96: so I've thought about starting a new web design, should I make a forum thread?
21:55:05Calinouto collect ideas, etc
21:57:31Calinouthere's a few things I'm not 100% sure of, like, if website should have a dark/light theme by default (it could be configurable, like on http://urho3d.github.io - in fact, it'd be great if nim doc had that too!)
21:57:44Calinoufor example, I think https://github.com/nim-lang/assets/blob/master/Experimental/logo-simplified.svg looks great on dark background, not so much on light background
22:03:46*fastrom quit (Quit: Leaving.)
22:05:04*irrequietus joined #nim
22:07:08*nairobi quit (Read error: Connection timed out)
22:07:28*PMunch quit (Quit: leaving)
22:07:46libmanSuggestion: in `nim --out:X Y.nim`, if X exists as a directory, set output binary to joinPath(X, Y.replace(".nim"))
22:07:50*PMunch joined #nim
22:08:14*nairobi joined #nim
22:08:14*PMunch quit (Remote host closed the connection)
22:12:57*miere quit ()
22:15:18*libman quit (Ping timeout: 250 seconds)
22:19:44*endragor joined #nim
22:22:54*libman joined #nim
22:24:08libmanThe logo crown should definitely be gold. The current gold-and-black icon on dark background looks terrible.
22:24:25*endragor quit (Ping timeout: 258 seconds)
22:25:03*nairobi quit (Read error: Connection timed out)
22:25:46*nairobi joined #nim
22:29:41*der-landgraf joined #nim
22:36:40libmanCalinou: just fooling around: http://libman.org/img/bak/20160819-Nim-white.jpg ; http://libman.org/img/bak/20160819-Nim-black.jpg
22:37:03*gokr quit (Ping timeout: 244 seconds)
22:40:36*hooo joined #nim
22:41:06hoooso what does "fast gc" actually mean? it could be slower than python just because the GC is crap
22:42:29*Matthias247 quit (Read error: Connection reset by peer)
22:45:27*gokr joined #nim
22:48:05*brechtm joined #nim
22:57:50*brechtm quit (Remote host closed the connection)
22:58:13*gokr quit (Ping timeout: 258 seconds)
23:01:13*desophos joined #nim
23:02:22*gokr joined #nim
23:04:45*nairobi quit (Remote host closed the connection)
23:16:15*yglukhov quit (Remote host closed the connection)
23:21:29*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
23:31:18*gokr quit (Ping timeout: 244 seconds)
23:33:28*Demon_Fox joined #nim
23:34:44*gokr joined #nim
23:45:07*rbergmair quit (Quit: Leaving.)
23:45:51*gokr quit (Ping timeout: 250 seconds)
23:50:47*gokr joined #nim
23:55:55*SianaGearz quit (Ping timeout: 252 seconds)
23:56:41*minus quit (Ping timeout: 250 seconds)
23:57:04*niv quit (Ping timeout: 260 seconds)
23:59:15*gokr quit (Ping timeout: 264 seconds)