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:53 | FromGitter | <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:13 | Demos[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:10 | skrylar_ | 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:17 | FromGitter | <andreaferretti> @miran_ glad to hear you had such a speedup! |
08:46:42 | FromGitter | <andreaferretti> `-d:release` is fundamental to get Nim code run at full speed, the default is debug mode |
08:47:18 | FromGitter | <andreaferretti> @mratsim very cool! Do you have any plans to integrate this into ArrayMancer? |
08:48:05 | FromGitter | <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:33 | FromGitter | <mratsim> Yes obviously :), I was waiting for a proper OpenCL BLAS :) |
09:21:44 | FromGitter | <mratsim> clblas for AMD was not updated for like 3 years |
09:22:00 | FromGitter | <mratsim> from* |
09:23:10 | FromGitter | <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:27 | FromGitter | <andreaferretti> yeah, I should use nimgem with nimCUDA as well |
09:46:34 | FromGitter | <andreaferretti> I enhanced c2nim for it |
09:46:51 | FromGitter | <andreaferretti> but in the end I still had to make some small manual adjustment in the source |
09:46:57 | FromGitter | <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:06 | FromGitter | <tyrion> What is the difference between these two? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a857b6d18f388e626a88137] |
12:23:41 | FromGitter | <andreaferretti> well, I think it may be the same |
12:23:51 | FromGitter | <andreaferretti> from a type point of view |
12:24:06 | FromGitter | <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:13 | PMunch | Wouldn'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:36 | FromGitter | <andreaferretti> I hope not |
12:48:48 | FromGitter | <andreaferretti> the concept applies to a single type |
12:49:01 | FromGitter | <andreaferretti> a type T either satisfies the concept or not |
12:49:21 | FromGitter | <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:47 | FromGitter | <andreaferretti> I cannot find a sensible way to intepret that for a pair of types |
12:50:00 | FromGitter | <andreaferretti> which one would satisfy the concept? |
12:50:08 | PMunch | Hmm, 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:42 | FromGitter | <mratsim> ```doesn’t that work like that?``` [https://gitter.im/nim-lang/Nim?at=5a8584f20cef4fed2ec08e54] |
13:03:07 | FromGitter | <mratsim> (obviously mathematically wise it’s wrong) |
13:06:22 | FromGitter | <andreaferretti> if you define a concept like that and I understand correctly |
13:06:28 | FromGitter | <andreaferretti> not type will ever match it |
13:06:47 | FromGitter | <andreaferretti> the algorithm should be like this |
13:07:07 | FromGitter | <andreaferretti> let me check whether `T` satisfies `AdditiveMonoid` |
13:07:18 | FromGitter | <andreaferretti> the first line tells me to pick `x, y: T` |
13:07:44 | FromGitter | <andreaferretti> the second line requires `x is float`, which implies `T` must be float |
13:07:58 | FromGitter | <andreaferretti> the third line requires `y is int`, which implies `T` must be int |
13:08:05 | FromGitter | <andreaferretti> hence `T` does not match |
13:10:00 | FromGitter | <alehander42> so, is there any case when concept x, y can do something concept x can't |
13:10:33 | FromGitter | <andreaferretti> don't think so |
13:10:39 | FromGitter | <andreaferretti> it is just more readable |
13:10:53 | FromGitter | <andreaferretti> I read it like: given x, y in T I can add them |
13:11:14 | FromGitter | <andreaferretti> the second version reads like: given x in T I can add it to itself |
13:11:24 | FromGitter | <andreaferretti> now, from the types point of view the two are the same |
13:11:34 | FromGitter | <andreaferretti> the second one is just awkward |
13:11:35 | * | rinzai quit (Ping timeout: 240 seconds) |
13:11:57 | FromGitter | <andreaferretti> @Araq please correct me if I said something wrong |
13:12:12 | FromGitter | <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:15 | FromGitter | <alehander42> e.g. x, var y |
13:12:36 | * | rinzai joined #nim |
13:12:42 | FromGitter | <alehander42> or x, type A |
13:17:49 | * | Take_Your_Freedo joined #nim |
13:18:23 | * | TakeYourFreedom quit (Ping timeout: 268 seconds) |
13:18:42 | FromGitter | <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:06 | Araq | andreaferretti: 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:44 | Araq | wow |
14:35:45 | Araq | db.exec(sql"pragma journal_mode=off") |
14:35:45 | Araq | db.exec(sql"pragma SYNCHRONOUS=off") |
14:35:45 | Araq | db.exec(sql"pragma LOCKING_MODE=exclusive") |
14:35:57 | Araq | turn SQLite from a snail into a tiger |
14:41:13 | FromGitter | <sclee15> But there might be trade offs |
14:47:45 | FromGitter | <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:24 | FromGitter | <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:44 | PMunch | Hmm, what does lib/system.nim(2079, 17) Error: illegal capture 'charsets' mean? |
17:24:37 | Demos[m] | @Varriount: you can increase the cache as well |
17:24:59 | PMunch | Probably 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:15 | miran_ | i'm experimenting with using "parallel", but i'm getting "Error: (y)..(y) not disjoint from (y)..(y)", any hints maybe? |
17:28:14 | miran_ | https://nim-lang.org/docs/manual.html#parallel-spawn-parallel-statement |
17:30:28 | miran_ | 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:50 | PMunch | Hmm, that's strange |
17:38:06 | * | Gnjurac joined #nim |
17:38:14 | Gnjurac | does anyone of you use Nim for godot |
17:38:28 | Gnjurac | is export for android working ? |
17:43:15 | PMunch | Haven't used Nim with Godot, but I have written Nim code that ran on Android |
17:43:32 | PMunch | So I don't see why it wouldn't work if Godot devs have implemented it properly |
17:44:15 | FromGitter | <krux02> PMunch: that is normally the weak point: "implement it properly" |
17:44:17 | * | yglukhov quit (Remote host closed the connection) |
17:44:38 | PMunch | Haha, I just mean that it's properly wrapped up in a native activety on Android |
17:45:25 | PMunch | I could see them just saying, "nah native doesn't work on Android" without actually trying to wrap it |
17:46:01 | Gnjurac | https://pragmagic.github.io/godot-nim/master/index.html |
17:46:28 | FromGitter | <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:25 | PMunch | Well yeah |
17:47:43 | * | yglukhov joined #nim |
17:48:22 | PMunch | When 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:31 | PMunch | That was static though for whatever I wrote in my Nim code |
17:49:03 | PMunch | But you would have to create something to interface with Java if you wanted to have e.g. GPS |
17:50:37 | FromGitter | <krux02> I think it's really strange that on weaker platforms such as the phone the default api is Java. |
17:50:49 | FromGitter | <krux02> but yea that is google |
17:51:02 | FromGitter | <krux02> go wasn't ready yet back then |
17:51:18 | PMunch | Java might be considered a good fit though |
17:51:44 | PMunch | The whole VM thing is nice for sandboxing |
17:53:24 | PMunch | https://stackoverflow.com/a/3561028/2080836 |
17:53:28 | PMunch | More good points about Java |
17:53:57 | PMunch | Maybe not 6, but the others are good |
17:55:50 | * | rinzai joined #nim |
17:59:26 | PMunch | Man, this \n -> \p thing is messing with my code :P |
17:59:38 | PMunch | I'm writing \n but I want to write \p |
17:59:57 | * | rinzai quit (Ping timeout: 240 seconds) |
18:00:10 | PMunch | Hmm, can I declare \p myself somehow? |
18:05:48 | * | yglukhov quit (Remote host closed the connection) |
18:09:48 | FromGitter | <krux02> what is \p? |
18:11:05 | PMunch | Didn't you see sanegate? |
18:11:22 | * | yglukhov joined #nim |
18:11:45 | PMunch | https://github.com/nim-lang/Nim/issues/7089 |
18:17:05 | FromGitter | <krux02> ah yes I remember I just forgot about the '\p' |
18:17:55 | FromGitter | <krux02> I think currently that echo might be modifierd to parse the string for '\n' and make them platform specific |
18:18:12 | FromGitter | <krux02> simply because echo is the interface to the platform |
18:18:20 | FromGitter | <krux02> but not sure if that is a good idea in the long run |
18:21:11 | Araq | I always want \n |
18:21:32 | Araq | Windows is fine with \n nowadays |
18:21:41 | Araq | and 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:42 | miran_ | i have found the way to avoid that parallel error i mentioned earlier |
18:40:53 | PMunch | How? |
18:42:16 | miran_ | instead of trying to calculate `result[y][x]`, i'm calculating each row, i.e. `result[y]` |
18:43:33 | miran_ | 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:03 | miran_ | and result is defined as `array[12000, array[16000, int]]` |
18:44:28 | miran_ | this is when i use `parallel` and `--threads:on` |
18:44:43 | * | rinzai quit (Ping timeout: 256 seconds) |
18:45:35 | miran_ | hmmm, defining `height` as const works fine |
18:46:37 | miran_ | why is this behaviour different than when running the code normally (without parallel/threads)? cc Araq |
18:50:07 | Araq | miran_, 'parallel' is an experiment about adding a proof engine to Nim |
18:50:19 | Araq | and so it's more picky :P |
18:50:33 | miran_ | can you make it less picky? :) |
18:50:47 | PMunch | Make the rest of Nim as picky :) |
18:50:54 | Araq | I don't want to, I consider it a failed experiment |
18:51:11 | PMunch | Why? |
18:51:17 | miran_ | PMunch: make loops unusable? :/ |
18:51:40 | PMunch | Haha, I was partially joking. But proofs are nice |
18:51:44 | Araq | miran_, you need to widen 'parallel's scope to give the prover more information |
18:51:52 | * | TakeYourFreedom joined #nim |
18:52:02 | miran_ | oh, let me try that |
18:53:21 | * | ofelas joined #nim |
18:53:58 | miran_ | Araq: tried to put the whole body of proc inside of parallel block - the same error still |
18:56:57 | Araq | gist your code |
18:57:51 | miran_ | will do, let me clean it a bit first |
18:59:19 | Araq | PMunch, 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:24 | miran_ | https://gist.github.com/anonymous/bdc06bab7802a02893808f1a63a46550 |
18:59:50 | miran_ | before, `parallel` was on line 30 in front of the loop |
18:59:56 | PMunch | Ah, so it wasn't a technical problem. Just "it's too hard to understand" |
19:00:48 | Araq | well if it is as hard as the rest of Nim together I consider that a "technical" problem |
19:01:23 | PMunch | Haha, yeah that's a problem :P |
19:01:25 | Araq | for y in 0 ..< height: # try instead |
19:01:31 | miran_ | 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:34 | Araq | for y in 0 ..< result.len: |
19:02:15 | miran_ | still error on my end |
19:03:02 | miran_ | nope |
19:03:05 | miran_ | works |
19:04:10 | Araq | for y in 0 .. high(result): |
19:04:14 | Araq | works too |
19:05:03 | Araq | so yeah, it needs to become smarter :-) |
19:06:01 | miran_ | 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:41 | Gnjurac | is there some link of dayli builds? |
19:09:42 | * | ieatnerds joined #nim |
19:09:56 | Gnjurac | sorry wrong chanel |
19:10:27 | miran_ | 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:27 | ieatnerds | Anyone made a discord bot with discordnim library? |
19:11:57 | PMunch | Hmm, there used to be a discord bot here |
19:12:44 | PMunch | Not sure if that was writting in Nim tough |
19:12:51 | PMunch | Or 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:17 | Gnjurac | miran_, gnjurac is something like diver in Serbian |
19:18:37 | miran_ | i know, i'm from croatia ;) |
19:19:35 | Gnjurac | hmm ok , what game you making? |
19:25:50 | FromGitter | <krux02> I constantly forget how to join identifiers in a template |
19:26:03 | FromGitter | <krux02> I think in C it is done with '##' |
19:28:48 | miran_ | Gnjurac: is that question for me? i'm not into game-making.... |
19:31:35 | Araq | miran_, well the easy way out is to make the errors warnings |
19:31:47 | Araq | until the proof engine got smarter |
19:32:04 | Araq | krux02: via `` |
19:32:04 | miran_ | Araq: works for me! :) |
19:33:14 | Gnjurac | miran_, yep q was for you , sorry am swiching form nim to godotengine whole time got little lost |
19:34:49 | miran_ | Gnjurac: heh, i have no experience in that. for the most part, i'm working on scientific/numerics stuff.... |
19:36:37 | Gnjurac | making Terminator AI whit nuclear fusion cannon ? |
19:36:43 | * | rinzai joined #nim |
19:37:08 | miran_ | yup, that's it :P |
19:40:28 | * | Trustable joined #nim |
19:44:28 | * | rinzai quit (Ping timeout: 256 seconds) |
19:44:31 | FromGitter | <krux02> Araq: how do I apply that operator? |
19:46:28 | PMunch | var x = `something` |
19:46:43 | FromGitter | <krux02> Araq: there is no way I cas search for ` in theindex |
19:46:52 | PMunch | Where something is one of the template parameters |
19:47:05 | * | ieatnerds quit (Quit: Leaving) |
19:47:46 | FromGitter | <krux02> PMunch: I have a template paremeter, and I want to prepend a prefix to that identifier |
19:47:51 | FromGitter | <krux02> lets call it "prefix" |
19:48:08 | FromGitter | <krux02> how do I do that? |
19:48:46 | PMunch | Uhm, that might be harder |
19:48:53 | PMunch | I don't think that's possible with just a template |
19:49:01 | FromGitter | <krux02> ```template addPrefix(arg: untyped): untyped = ⏎ prefix ````` [https://gitter.im/nim-lang/Nim?at=5a85e42d5cc18726454462a6] |
19:49:14 | FromGitter | <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:10 | PMunch | Phew, 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:16 | PMunch | Now it runs on compile-time :) |
20:30:50 | * | rinzai joined #nim |
20:31:05 | PMunch | Man, once you get used to it this combinatory parser stuff is actually pretty neat |
20:31:25 | PMunch | What's the stack depth limit in Nim by the way? :P |
20:32:13 | FromGitter | <krux02> I would say it is no different than the depth in C |
20:32:26 | PMunch | I was kinda joking :P |
20:32:40 | PMunch | These parsers tend to have quite a bit of calls though |
20:32:56 | PMunch | Is there a way to get the deepest stack during a program run? I'm just curious |
20:33:17 | FromGitter | <krux02> what do you mean by the deepest stack? |
20:33:59 | FromGitter | <krux02> I think that you can ask the operating system for a specific stack size |
20:34:07 | PMunch | Never mind |
20:34:31 | FromGitter | <krux02> but I think the operating system needs to know how big it should create the stack before it starts the program |
20:34:48 | FromGitter | <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:16 | PMunch | Okay, 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:03 | PMunch | Still 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:41 | FromGitter | <krux02> http://ix.io/KEx |
23:51:11 | FromGitter | <krux02> http://ix.io/KEC |
23:51:23 | FromGitter | <krux02> what is the difference between foo and bar in that example? |