<< 15-02-2018 >>

00:01:12*j_rod_s quit (Ping timeout: 260 seconds)
00:01:12*gokr quit (Read error: Connection reset by peer)
00:01:29*vlad1777d joined #nim
00:15:53FromGitter<mratsim> @andreaferretti following my discussion with CLBlast maintainer here https://github.com/CNugteren/CLBlast/issues/233, it is available in Linux and macOS package manager since yesterday. And since today there are autogenerated Nim bindings here: https://github.com/numforge/nim-clblast
00:17:59*gokr joined #nim
00:19:17*j_rod_s joined #nim
00:25:03*j_rod_s quit (Ping timeout: 248 seconds)
00:37:29*j_rod_s joined #nim
00:54:13Demos[m]w.r.t the earlier python conversations: I spend a good part of my job unpythoning deep learning stuf
01:20:36*tyrion-mx quit (Quit: Leaving)
01:26:09*bjoern_lessig joined #nim
01:26:53*bjoern_lessig left #nim (#nim)
01:35:05*d10n-work quit (Quit: Connection closed for inactivity)
01:43:17*cspar joined #nim
02:03:45*j_rod_s quit (Ping timeout: 268 seconds)
02:06:00*j_rod_s joined #nim
02:34:08*chemist69 quit (Ping timeout: 256 seconds)
02:47:39*chemist69 joined #nim
02:48:48*SenasOzys quit (Ping timeout: 240 seconds)
02:54:31*vlad1777d quit (Remote host closed the connection)
03:03:36*j_rod_s_ joined #nim
03:05:32*j_rod_s quit (Ping timeout: 255 seconds)
03:05:33*j_rod_s_ is now known as j_rod_s
03:05:43*endragor joined #nim
03:07:35*endragor quit (Remote host closed the connection)
03:10:37*endragor joined #nim
03:25:33*gokr quit (Ping timeout: 265 seconds)
03:26:21*j_rod_s_ joined #nim
03:29:48*j_rod_s quit (Ping timeout: 256 seconds)
03:29:48*j_rod_s_ is now known as j_rod_s
03:49:59*rinzai quit (Ping timeout: 276 seconds)
04:00:01*cspar quit (Ping timeout: 248 seconds)
04:28:43*rinzai joined #nim
04:30:55*endragor_ joined #nim
04:32:08*endragor quit (Ping timeout: 256 seconds)
04:33:03*rinzai quit (Ping timeout: 248 seconds)
04:42:04*Snircle_ quit (Read error: Connection reset by peer)
04:43:04*Snircle joined #nim
05:10:51*skrylar_ joined #nim
05:13:24*skrylar quit (Ping timeout: 260 seconds)
05:14:52*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
05:22:31*rinzai joined #nim
05:27:29*rinzai quit (Ping timeout: 276 seconds)
05:30:55*dddddd quit (Remote host closed the connection)
05:41:04*BitPuffin joined #nim
06:12:50*nsf joined #nim
06:32:07*endragor_ quit (Remote host closed the connection)
06:32:42*endragor joined #nim
06:37:07*endragor quit (Ping timeout: 256 seconds)
06:58:48*endragor joined #nim
07:01:44*solitudesf joined #nim
07:36:10skrylar_neat. godot 3.0 is out
07:41:17*rinzai joined #nim
07:45:54*ieatnerds quit (Quit: Leaving)
07:46:00*rinzai quit (Ping timeout: 268 seconds)
08:00:22*rokups joined #nim
08:01:37*gokr joined #nim
08:28:33*PMunch joined #nim
08:35:06*rinzai joined #nim
08:38:27*j_rod_s_ joined #nim
08:39:38*rinzai quit (Ping timeout: 256 seconds)
08:40:12*j_rod_s quit (Ping timeout: 265 seconds)
08:40:12*j_rod_s_ is now known as j_rod_s
08:45:53*j_rod_s quit (Ping timeout: 248 seconds)
08:46:17FromGitter<andreaferretti> @miran_ glad to hear you had such a speedup!
08:46:42FromGitter<andreaferretti> `-d:release` is fundamental to get Nim code run at full speed, the default is debug mode
08:47:18FromGitter<andreaferretti> @mratsim very cool! Do you have any plans to integrate this into ArrayMancer?
08:48:05FromGitter<andreaferretti> I am opening an issue for Neo, but OpenCL support is not prioritary for me, if I had a little time I would rather work on sparse linear algebra and more lapack integration
08:56:24*floppydh joined #nim
08:57:48*SenasOzys joined #nim
09:09:27*kier quit (Ping timeout: 240 seconds)
09:21:33FromGitter<mratsim> Yes obviously :), I was waiting for a proper OpenCL BLAS :)
09:21:44FromGitter<mratsim> clblas for AMD was not updated for like 3 years
09:22:00FromGitter<mratsim> from*
09:23:10FromGitter<mratsim> by the way if you look into the repo, I used nimgen to autogenerate bindings that are kept in sync with upstream. It’s very well done.
09:28:22*solitudesf quit (Ping timeout: 268 seconds)
09:46:27FromGitter<andreaferretti> yeah, I should use nimgem with nimCUDA as well
09:46:34FromGitter<andreaferretti> I enhanced c2nim for it
09:46:51FromGitter<andreaferretti> but in the end I still had to make some small manual adjustment in the source
09:46:57FromGitter<andreaferretti> and in one case in the generated nim
10:01:34*rinzai joined #nim
10:06:14*rinzai quit (Ping timeout: 276 seconds)
10:14:23*gokr left #nim (#nim)
10:55:20*rinzai joined #nim
11:00:03*rinzai quit (Ping timeout: 256 seconds)
11:01:38*rinzai joined #nim
11:02:30*yglukhov joined #nim
11:04:24*vlad1777d joined #nim
11:22:44*TakeYourFreedom joined #nim
11:26:17*Vladar joined #nim
11:29:32*vlad1777d quit (Ping timeout: 260 seconds)
11:44:34*yglukhov quit (Remote host closed the connection)
11:45:10*yglukhov joined #nim
11:49:35*yglukhov quit (Ping timeout: 240 seconds)
11:55:28*vlad1777d joined #nim
12:06:36*yglukhov joined #nim
12:13:45*arecaceae quit (Remote host closed the connection)
12:14:09*arecaceae joined #nim
12:22:06FromGitter<tyrion> What is the difference between these two? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a857b6d18f388e626a88137]
12:23:41FromGitter<andreaferretti> well, I think it may be the same
12:23:51FromGitter<andreaferretti> from a type point of view
12:24:06FromGitter<andreaferretti> but I find the first one more readable
12:27:08*vlad1777d quit (Ping timeout: 255 seconds)
12:28:56*kier joined #nim
12:33:12*arnetheduck joined #nim
12:41:59*MyMind joined #nim
12:43:13PMunchWouldn't the first be able to take an int and a float as long as there is a plus(int, float): int proc defined somewhere?
12:43:44*Sembei quit (Ping timeout: 260 seconds)
12:48:36FromGitter<andreaferretti> I hope not
12:48:48FromGitter<andreaferretti> the concept applies to a single type
12:49:01FromGitter<andreaferretti> a type T either satisfies the concept or not
12:49:21FromGitter<andreaferretti> the first notation says that given `x, y: T` we can add them up
12:49:45*yglukhov quit (Remote host closed the connection)
12:49:47FromGitter<andreaferretti> I cannot find a sensible way to intepret that for a pair of types
12:50:00FromGitter<andreaferretti> which one would satisfy the concept?
12:50:08PMunchHmm, that's true
12:50:16*yglukhov joined #nim
12:58:17*dddddd joined #nim
13:01:09*yglukhov quit (Remote host closed the connection)
13:01:21*yglukhov joined #nim
13:02:42FromGitter<mratsim> ```doesn’t that work like that?``` [https://gitter.im/nim-lang/Nim?at=5a8584f20cef4fed2ec08e54]
13:03:07FromGitter<mratsim> (obviously mathematically wise it’s wrong)
13:06:22FromGitter<andreaferretti> if you define a concept like that and I understand correctly
13:06:28FromGitter<andreaferretti> not type will ever match it
13:06:47FromGitter<andreaferretti> the algorithm should be like this
13:07:07FromGitter<andreaferretti> let me check whether `T` satisfies `AdditiveMonoid`
13:07:18FromGitter<andreaferretti> the first line tells me to pick `x, y: T`
13:07:44FromGitter<andreaferretti> the second line requires `x is float`, which implies `T` must be float
13:07:58FromGitter<andreaferretti> the third line requires `y is int`, which implies `T` must be int
13:08:05FromGitter<andreaferretti> hence `T` does not match
13:10:00FromGitter<alehander42> so, is there any case when concept x, y can do something concept x can't
13:10:33FromGitter<andreaferretti> don't think so
13:10:39FromGitter<andreaferretti> it is just more readable
13:10:53FromGitter<andreaferretti> I read it like: given x, y in T I can add them
13:11:14FromGitter<andreaferretti> the second version reads like: given x in T I can add it to itself
13:11:24FromGitter<andreaferretti> now, from the types point of view the two are the same
13:11:34FromGitter<andreaferretti> the second one is just awkward
13:11:35*rinzai quit (Ping timeout: 240 seconds)
13:11:57FromGitter<andreaferretti> @Araq please correct me if I said something wrong
13:12:12FromGitter<alehander42> ah, from what i see it can be useful for e.g. if you want to name different forms of the type
13:12:15FromGitter<alehander42> e.g. x, var y
13:12:36*rinzai joined #nim
13:12:42FromGitter<alehander42> or x, type A
13:17:49*Take_Your_Freedo joined #nim
13:18:23*TakeYourFreedom quit (Ping timeout: 268 seconds)
13:18:42FromGitter<tyrion> thanks, this has been a really useful clarification
13:20:12*solitudesf joined #nim
13:23:43*sz0 joined #nim
13:24:05*rinzai quit (Ping timeout: 240 seconds)
13:29:15*Snircle joined #nim
13:38:39*yglukhov quit (Remote host closed the connection)
13:39:14*yglukhov joined #nim
13:49:06Araqandreaferretti: seems spot on
13:51:54*rinzai joined #nim
13:55:09*endragor quit (Remote host closed the connection)
13:55:42*endragor joined #nim
13:56:05*rinzai quit (Ping timeout: 240 seconds)
13:56:57*endragor_ joined #nim
14:00:10*endragor quit (Ping timeout: 265 seconds)
14:01:55*endragor_ quit (Ping timeout: 260 seconds)
14:02:49*rinzai joined #nim
14:13:14*yglukhov quit (Remote host closed the connection)
14:13:26*yglukhov joined #nim
14:19:45*pwntus quit (Read error: Connection reset by peer)
14:26:00*endragor joined #nim
14:27:50*pwntus joined #nim
14:33:58*pwntus quit (Changing host)
14:33:58*pwntus joined #nim
14:35:44Araqwow
14:35:45Araq db.exec(sql"pragma journal_mode=off")
14:35:45Araq db.exec(sql"pragma SYNCHRONOUS=off")
14:35:45Araq db.exec(sql"pragma LOCKING_MODE=exclusive")
14:35:57Araqturn SQLite from a snail into a tiger
14:41:13FromGitter<sclee15> But there might be trade offs
14:47:45FromGitter<krux02> @sclee15 yes, for example it does not do journaling, and it is not synchronous
14:56:34*yglukhov quit (Remote host closed the connection)
15:08:04*endragor quit (Remote host closed the connection)
15:21:04*gokr joined #nim
15:31:00*sz0 quit (Quit: Connection closed for inactivity)
15:39:36*miran_ joined #nim
15:46:41*Take_Your_Freedo quit (Remote host closed the connection)
15:46:53*Take_Your_Freedo joined #nim
16:06:08*Take_Your_Freedo quit (Remote host closed the connection)
16:10:12*floppydh quit (Quit: WeeChat 2.0.1)
16:10:27*gokr quit (Ping timeout: 240 seconds)
16:15:24FromGitter<Varriount> Araq: Why not open the database using memory backing too whole you're at it.
16:32:16*PMunch quit (Quit: Leaving)
16:37:56*miran_ quit (Remote host closed the connection)
16:41:42*endragor joined #nim
16:41:50*vivus joined #nim
16:43:12*miran_ joined #nim
16:43:35*rinzai quit (Ping timeout: 240 seconds)
16:49:10*endragor_ joined #nim
16:51:48*endragor quit (Ping timeout: 240 seconds)
16:56:04*endragor_ quit (Remote host closed the connection)
16:56:40*endragor joined #nim
16:59:53*rinzai joined #nim
17:01:21*endragor quit (Ping timeout: 248 seconds)
17:04:29*rinzai quit (Ping timeout: 260 seconds)
17:08:30*endragor joined #nim
17:15:01*derlafff quit (Remote host closed the connection)
17:15:18*derlafff joined #nim
17:16:25*endragor quit (Remote host closed the connection)
17:17:00*endragor joined #nim
17:17:08*endragor quit (Remote host closed the connection)
17:19:21*PMunch joined #nim
17:21:20*rinzai joined #nim
17:22:44PMunchHmm, what does lib/system.nim(2079, 17) Error: illegal capture 'charsets' mean?
17:24:37Demos[m]@Varriount: you can increase the cache as well
17:24:59PMunchProbably caused by "charsets: varargs[set[char]]" in a proc definition, but that's not mentioned in the error message
17:25:48*rinzai quit (Ping timeout: 252 seconds)
17:27:15miran_i'm experimenting with using "parallel", but i'm getting "Error: (y)..(y) not disjoint from (y)..(y)", any hints maybe?
17:28:14miran_https://nim-lang.org/docs/manual.html#parallel-spawn-parallel-statement
17:30:28miran_line which raises this error is "result[y][x] = spawn mandel(real, imag, iters)", and this is inside two for loops
17:31:11*miran_ quit (Quit: Konversation terminated!)
17:33:03*miran_ joined #nim
17:33:59*yglukhov joined #nim
17:35:50PMunchHmm, that's strange
17:38:06*Gnjurac joined #nim
17:38:14Gnjuracdoes anyone of you use Nim for godot
17:38:28Gnjuracis export for android working ?
17:43:15PMunchHaven't used Nim with Godot, but I have written Nim code that ran on Android
17:43:32PMunchSo I don't see why it wouldn't work if Godot devs have implemented it properly
17:44:15FromGitter<krux02> PMunch: that is normally the weak point: "implement it properly"
17:44:17*yglukhov quit (Remote host closed the connection)
17:44:38PMunchHaha, I just mean that it's properly wrapped up in a native activety on Android
17:45:25PMunchI could see them just saying, "nah native doesn't work on Android" without actually trying to wrap it
17:46:01Gnjurachttps://pragmagic.github.io/godot-nim/master/index.html
17:46:28FromGitter<krux02> well I actually heared that native is a bit problematic on android, since the core of it already requires java any native code has to interface with java
17:47:25PMunchWell yeah
17:47:43*yglukhov joined #nim
17:48:22PMunchWhen I was doing Nim on Android with SDL2 there was a Java wrapper that contained all the permissions and basic Android housekeeping before starting the native code
17:48:31PMunchThat was static though for whatever I wrote in my Nim code
17:49:03PMunchBut you would have to create something to interface with Java if you wanted to have e.g. GPS
17:50:37FromGitter<krux02> I think it's really strange that on weaker platforms such as the phone the default api is Java.
17:50:49FromGitter<krux02> but yea that is google
17:51:02FromGitter<krux02> go wasn't ready yet back then
17:51:18PMunchJava might be considered a good fit though
17:51:44PMunchThe whole VM thing is nice for sandboxing
17:53:24PMunchhttps://stackoverflow.com/a/3561028/2080836
17:53:28PMunchMore good points about Java
17:53:57PMunchMaybe not 6, but the others are good
17:55:50*rinzai joined #nim
17:59:26PMunchMan, this \n -> \p thing is messing with my code :P
17:59:38PMunchI'm writing \n but I want to write \p
17:59:57*rinzai quit (Ping timeout: 240 seconds)
18:00:10PMunchHmm, can I declare \p myself somehow?
18:05:48*yglukhov quit (Remote host closed the connection)
18:09:48FromGitter<krux02> what is \p?
18:11:05PMunchDidn't you see sanegate?
18:11:22*yglukhov joined #nim
18:11:45PMunchhttps://github.com/nim-lang/Nim/issues/7089
18:17:05FromGitter<krux02> ah yes I remember I just forgot about the '\p'
18:17:55FromGitter<krux02> I think currently that echo might be modifierd to parse the string for '\n' and make them platform specific
18:18:12FromGitter<krux02> simply because echo is the interface to the platform
18:18:20FromGitter<krux02> but not sure if that is a good idea in the long run
18:21:11AraqI always want \n
18:21:32AraqWindows is fine with \n nowadays
18:21:41Araqand on unix there is no difference
18:25:03*sz0 joined #nim
18:31:32*yglukhov quit (Remote host closed the connection)
18:40:19*rinzai joined #nim
18:40:42miran_i have found the way to avoid that parallel error i mentioned earlier
18:40:53PMunchHow?
18:42:16miran_instead of trying to calculate `result[y][x]`, i'm calculating each row, i.e. `result[y]`
18:43:33miran_Araq: i get this error "Error: cannot prove: y <= 11999 (bounds check)" if i use parallel in a for loop `for y in 0 ..< height:`, where `let height = result.len`
18:44:03miran_and result is defined as `array[12000, array[16000, int]]`
18:44:28miran_this is when i use `parallel` and `--threads:on`
18:44:43*rinzai quit (Ping timeout: 256 seconds)
18:45:35miran_hmmm, defining `height` as const works fine
18:46:37miran_why is this behaviour different than when running the code normally (without parallel/threads)? cc Araq
18:50:07Araqmiran_, 'parallel' is an experiment about adding a proof engine to Nim
18:50:19Araqand so it's more picky :P
18:50:33miran_can you make it less picky? :)
18:50:47PMunchMake the rest of Nim as picky :)
18:50:54AraqI don't want to, I consider it a failed experiment
18:51:11PMunchWhy?
18:51:17miran_PMunch: make loops unusable? :/
18:51:40PMunchHaha, I was partially joking. But proofs are nice
18:51:44Araqmiran_, you need to widen 'parallel's scope to give the prover more information
18:51:52*TakeYourFreedom joined #nim
18:52:02miran_oh, let me try that
18:53:21*ofelas joined #nim
18:53:58miran_Araq: tried to put the whole body of proc inside of parallel block - the same error still
18:56:57Araqgist your code
18:57:51miran_will do, let me clean it a bit first
18:59:19AraqPMunch, the problem is that every proof rule is simple but in their combination it takes an expert to understand the compiler's reasoning
18:59:24miran_https://gist.github.com/anonymous/bdc06bab7802a02893808f1a63a46550
18:59:50miran_before, `parallel` was on line 30 in front of the loop
18:59:56PMunchAh, so it wasn't a technical problem. Just "it's too hard to understand"
19:00:48Araqwell if it is as hard as the rest of Nim together I consider that a "technical" problem
19:01:23PMunchHaha, yeah that's a problem :P
19:01:25Araqfor y in 0 ..< height: # try instead
19:01:31miran_changing `let` to `const` on line 25 makes it work. also, if it takes to long to run, delete the last zero from the (hardcoded) values of 12000 and 16000
19:01:34Araqfor y in 0 ..< result.len:
19:02:15miran_still error on my end
19:03:02miran_nope
19:03:05miran_works
19:04:10Araq for y in 0 .. high(result):
19:04:14Araqworks too
19:05:03Araqso yeah, it needs to become smarter :-)
19:06:01miran_Araq: when you said "I consider it a failed experiment" - did you mean proof engine or parallel?
19:06:52*rinzai joined #nim
19:09:41Gnjuracis there some link of dayli builds?
19:09:42*ieatnerds joined #nim
19:09:56Gnjuracsorry wrong chanel
19:10:27miran_Gnjurac: while you're here - is your nick a name of one animal maybe? :)
19:10:51*gokr joined #nim
19:11:10*rinzai quit (Ping timeout: 240 seconds)
19:11:27ieatnerdsAnyone made a discord bot with discordnim library?
19:11:57PMunchHmm, there used to be a discord bot here
19:12:44PMunchNot sure if that was writting in Nim tough
19:12:51PMunchOr just some off-the-shelf thing
19:14:45*yglukhov joined #nim
19:17:45*arecaceae quit (Remote host closed the connection)
19:18:08*arecaceae joined #nim
19:18:17Gnjuracmiran_, gnjurac is something like diver in Serbian
19:18:37miran_i know, i'm from croatia ;)
19:19:35Gnjurachmm ok , what game you making?
19:25:50FromGitter<krux02> I constantly forget how to join identifiers in a template
19:26:03FromGitter<krux02> I think in C it is done with '##'
19:28:48miran_Gnjurac: is that question for me? i'm not into game-making....
19:31:35Araqmiran_, well the easy way out is to make the errors warnings
19:31:47Araquntil the proof engine got smarter
19:32:04Araqkrux02: via ``
19:32:04miran_Araq: works for me! :)
19:33:14Gnjuracmiran_, yep q was for you , sorry am swiching form nim to godotengine whole time got little lost
19:34:49miran_Gnjurac: heh, i have no experience in that. for the most part, i'm working on scientific/numerics stuff....
19:36:37Gnjuracmaking Terminator AI whit nuclear fusion cannon ?
19:36:43*rinzai joined #nim
19:37:08miran_yup, that's it :P
19:40:28*Trustable joined #nim
19:44:28*rinzai quit (Ping timeout: 256 seconds)
19:44:31FromGitter<krux02> Araq: how do I apply that operator?
19:46:28PMunchvar x = `something`
19:46:43FromGitter<krux02> Araq: there is no way I cas search for ` in theindex
19:46:52PMunchWhere something is one of the template parameters
19:47:05*ieatnerds quit (Quit: Leaving)
19:47:46FromGitter<krux02> PMunch: I have a template paremeter, and I want to prepend a prefix to that identifier
19:47:51FromGitter<krux02> lets call it "prefix"
19:48:08FromGitter<krux02> how do I do that?
19:48:46PMunchUhm, that might be harder
19:48:53PMunchI don't think that's possible with just a template
19:49:01FromGitter<krux02> ```template addPrefix(arg: untyped): untyped = ⏎ prefix ````` [https://gitter.im/nim-lang/Nim?at=5a85e42d5cc18726454462a6]
19:49:14FromGitter<krux02> well that was exactly the question
19:52:46*xkapastel joined #nim
20:04:04*yglukhov quit (Remote host closed the connection)
20:17:00*yglukhov joined #nim
20:19:42*endragor joined #nim
20:22:48*rokups quit (Quit: Connection closed for inactivity)
20:24:34*endragor quit (Ping timeout: 260 seconds)
20:28:27*gokr quit (Ping timeout: 240 seconds)
20:29:10PMunchPhew, added a couple simple basic parsers and replaced all the regexes in the protobuf code with combparser statements: https://github.com/PMunch/protobuf-nim/commit/32faaed938e3eaef8920eac78fbb3c7ae5e26ea2
20:29:16PMunchNow it runs on compile-time :)
20:30:50*rinzai joined #nim
20:31:05PMunchMan, once you get used to it this combinatory parser stuff is actually pretty neat
20:31:25PMunchWhat's the stack depth limit in Nim by the way? :P
20:32:13FromGitter<krux02> I would say it is no different than the depth in C
20:32:26PMunchI was kinda joking :P
20:32:40PMunchThese parsers tend to have quite a bit of calls though
20:32:56PMunchIs there a way to get the deepest stack during a program run? I'm just curious
20:33:17FromGitter<krux02> what do you mean by the deepest stack?
20:33:59FromGitter<krux02> I think that you can ask the operating system for a specific stack size
20:34:07PMunchNever mind
20:34:31FromGitter<krux02> but I think the operating system needs to know how big it should create the stack before it starts the program
20:34:48FromGitter<krux02> so not really something you do within nim
20:35:05*rinzai quit (Ping timeout: 240 seconds)
20:36:43*TakeYourFreedom quit (Quit: Leaving)
20:38:28*Trustable quit (Remote host closed the connection)
20:43:56*Gnjurac quit (Remote host closed the connection)
20:52:24*sz0 quit (Quit: Connection closed for inactivity)
20:57:18*yglukhov quit (Remote host closed the connection)
21:19:16PMunchOkay, I'm off to bed. Hopefully tomorrow I will be able to implement the first actual output of the protobuf module!
21:19:46*nsf quit (Quit: WeeChat 2.0.1)
21:20:03PMunchStill have some kinks to work out with variable name checking though..
21:20:05*PMunch quit (Quit: leaving)
21:23:54*gokr joined #nim
21:24:39*rinzai joined #nim
21:25:06*miran_ quit (Quit: Konversation terminated!)
21:29:10*rinzai quit (Ping timeout: 240 seconds)
21:31:13*radagast_04 quit (Ping timeout: 248 seconds)
21:37:22*gangstacat quit (Quit: Ĝis!)
21:47:57*d10n-work joined #nim
21:55:04*rinzai joined #nim
21:59:20*rinzai quit (Ping timeout: 252 seconds)
21:59:40*BitPuffin quit (Remote host closed the connection)
22:00:07*rinzai joined #nim
22:04:26*rinzai quit (Ping timeout: 256 seconds)
22:05:22*rinzai joined #nim
22:09:57*rinzai quit (Ping timeout: 264 seconds)
22:13:28*Vladar quit (Remote host closed the connection)
22:19:29*solitudesf quit (Ping timeout: 256 seconds)
22:30:58*rinzai joined #nim
22:41:46*gangstacat joined #nim
22:55:37*gokr left #nim (#nim)
22:59:41*yglukhov joined #nim
23:04:03*yglukhov quit (Ping timeout: 256 seconds)
23:28:52*vlad1777d joined #nim
23:49:41FromGitter<krux02> http://ix.io/KEx
23:51:11FromGitter<krux02> http://ix.io/KEC
23:51:23FromGitter<krux02> what is the difference between foo and bar in that example?