<< 24-04-2016 >>

00:19:44*brokencode quit (Quit: My Mac has gone to sleep. ZZZzzz…)
00:34:04*space-wizard joined #nim
00:34:39*space-wizard quit (Max SendQ exceeded)
00:35:18*space-wizard joined #nim
00:36:08*brokencode joined #nim
01:00:55*gokr joined #nim
01:10:55*Swend quit (Quit: Page closed)
01:11:20*space-wizard quit (Quit: My Mac has gone to sleep. ZZZzzz…)
01:12:08*gokr quit (Ping timeout: 276 seconds)
01:33:05*arnetheduck joined #nim
01:35:14*brson_ joined #nim
01:36:03*ephja quit (Ping timeout: 240 seconds)
01:36:32*brson_ quit (Client Quit)
01:38:14*brson quit (Ping timeout: 260 seconds)
01:52:55*chrisheller quit (Remote host closed the connection)
01:58:23*brokencode quit (Quit: My Mac has gone to sleep. ZZZzzz…)
02:02:46*Varriount quit (Disconnected by services)
02:02:46*Varriount_ joined #nim
02:28:15*draynium joined #nim
02:34:17*gorgonzolapasta quit (Quit: böbö)
02:51:27*space-wizard joined #nim
03:47:55*space-wizard quit (Quit: My Mac has gone to sleep. ZZZzzz…)
04:27:13*zxtx quit (Read error: Connection reset by peer)
04:27:45*zxtx joined #nim
04:50:06*sillytime is now known as serioustime
05:47:32*castlelore quit (Quit: WeeChat 1.4)
05:50:05*castlelore joined #nim
05:50:36*desophos quit (Read error: Connection reset by peer)
06:01:52*space-wizard joined #nim
06:15:17*castlelore quit (Quit: WeeChat 1.4)
06:16:45*castlelore joined #nim
06:18:00*castlelore quit (Client Quit)
06:19:41*castlelore joined #nim
06:36:49*Ven joined #nim
06:38:23*Ven quit (Client Quit)
06:38:42*Ven joined #nim
07:14:41*space-wizard quit (Quit: My Mac has gone to sleep. ZZZzzz…)
07:23:13*Demon_Fox quit (Ping timeout: 268 seconds)
07:24:36*Demon_Fox joined #nim
07:33:49*yglukhov joined #nim
07:39:12*brson joined #nim
07:43:59*Demon_Fox_ joined #nim
07:44:15*Demon_Fox quit (Disconnected by services)
07:44:21*Demon_Fox_ is now known as Demon_Fox
07:56:48*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:03:23*yglukhov quit (Remote host closed the connection)
08:03:59*yglukhov joined #nim
08:08:42*yglukhov quit (Ping timeout: 260 seconds)
08:33:39*yglukhov joined #nim
08:38:41*yglukhov quit (Ping timeout: 276 seconds)
09:02:39*Demon_Fox quit (Quit: Leaving)
09:06:13*ephja joined #nim
09:25:31*cheatfate_ is now known as cheatfate
09:27:31*brson quit (Ping timeout: 250 seconds)
09:29:09cheatfatedom96, i have found that one more bug with "immediate handle" in acceptAddr -> failAccept() template, on fail it create new future and can cause same error with deep recursion
09:29:49cheatfatecheatfate, question is, is it possible to wait for future but not run exception
09:30:15dom96I still don't understand why these deep recursions happen
09:30:56dom96it is just because `cb` is indirectly calling itself?
09:31:19cheatfatedom96, i will try to make some graphic presentation for you :) wait please
09:35:22*yglukhov joined #nim
09:38:48*fredrik92 joined #nim
09:40:15*yglukhov quit (Ping timeout: 276 seconds)
10:07:18*Ven joined #nim
10:10:42*GangstaCat joined #nim
10:19:22*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
10:19:48cheatfatedom96, ok my knowledge is not enough to easily describe the problem
10:21:53cheatfatedom96, but i think problem is looks like http://stackoverflow.com/questions/26542686/python-3-asyncio-yield-from-vs-asyncio-async-stack-usage
10:24:15*Ven joined #nim
10:36:48*yglukhov joined #nim
10:41:19*yglukhov quit (Ping timeout: 252 seconds)
10:59:23*fredrik92 quit (Ping timeout: 250 seconds)
11:22:48*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:29:10*endragor joined #nim
12:14:24endragorIs it possible to refer to template parameter type name from .importcpp pattern? The examples in the manual assume that the type is plainly used in one of the parameters, but it's not the case for me.
12:15:14endragorthe signature is like this:
12:15:14endragorproc doSomething[T](obj: Obj): Container[T]
12:15:41federico3dom96: is there a script to generate a new release?
12:22:50*castlelore quit (Quit: WeeChat 1.4)
12:29:56cheatfatedom96, currently await macro expands to "yield future; future.read" but i think it must be "if not future.finished: yield future; future.read"
12:33:08cheatfatedom96, because when operation completed immediately, future.cb is still nil, so it not called
12:33:14dom96cheatfate: Hrm, I think it should be handled by `cb` https://github.com/nim-lang/Nim/blob/devel/lib/pure/asyncdispatch.nim#L1257
12:35:06dom96federico3: for nim? no
12:35:58*castlelore joined #nim
12:36:34federico3can I help with that?
12:38:14*yglukhov joined #nim
12:38:24federico3I'm trying out the free service from CircleCI: they allow pulling in stuff from external repositories *and* binaries during the build and give access to the build artifacts, so it can be used as a buildbot
12:40:05dom96go for it
12:40:24federico3https://circleci.com/gh/FedericoCeratto/Nim/5#artifacts
12:42:33*yglukhov quit (Ping timeout: 244 seconds)
12:42:44*Matthias247 joined #nim
12:42:58dom96federico3: is circleci just Linux?
12:43:17federico3yes, including android
12:44:14federico3the artifacts can be downloaded so this could enable automated nightly builds
12:45:16federico3I don't know how you are doing the official build (e.g. what other tools are pulled in, tweaks etc)
13:16:26*yglukhov joined #nim
13:39:49*darkf quit (Quit: Leaving)
13:53:34*Ven joined #nim
14:00:43*yglukhov_ joined #nim
14:00:43*yglukhov quit (Read error: Connection reset by peer)
14:02:47*yglukhov_ quit (Read error: Connection reset by peer)
14:06:55*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:13:40*draynium quit (Quit: ZNC 1.6.1+deb1 - http://znc.in)
14:18:28*draynium joined #nim
14:22:35*Matthias247 quit (Quit: Matthias247)
14:23:56federico3ok, I got CircleCI to generate a nimble binary and now it can use it to build other packages
14:25:11*yglukhov joined #nim
14:26:13*Matthias247 joined #nim
14:29:52*yglukhov quit (Read error: Connection reset by peer)
14:30:26*yglukhov joined #nim
14:42:08*Matthias247 quit (Read error: Connection reset by peer)
14:46:21*Ven joined #nim
14:56:59*silven quit (Ping timeout: 276 seconds)
15:01:32*yglukhov quit (Read error: Connection reset by peer)
15:01:55*yglukhov joined #nim
15:02:33*silven joined #nim
15:19:34*zxtx quit (Quit: Strong teeth for a strong nation)
15:20:07*zxtx joined #nim
15:33:56*Arrrr joined #nim
15:37:39*yglukhov quit (Remote host closed the connection)
15:38:15*yglukhov joined #nim
15:38:40*space-wizard joined #nim
15:43:08*yglukhov quit (Ping timeout: 276 seconds)
15:52:18*fredrik92 joined #nim
16:02:35*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:06:36*gokr joined #nim
16:20:43*gokr left #nim (#nim)
16:23:59*perturbation joined #nim
16:39:36*yglukhov joined #nim
16:44:14*yglukhov quit (Ping timeout: 276 seconds)
16:54:08*brson joined #nim
16:57:41*perturbation quit (Remote host closed the connection)
17:11:11*Ven joined #nim
17:14:26*ludocode quit (Remote host closed the connection)
17:14:57*yglukhov joined #nim
17:15:18*ludocode joined #nim
17:17:25*silven quit (Ping timeout: 244 seconds)
17:18:03*silven joined #nim
17:19:29*yglukhov quit (Ping timeout: 244 seconds)
17:25:07*yglukhov joined #nim
17:38:21*ul joined #nim
17:40:13ulhi all! could you point me to the best practices of having dynamic plugins in Nim program? i came from dynamic languages, and want to implement some kind of code hot swap for my app
17:44:18*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:49:53ArrrrYou can try using python from nim https://github.com/nim-lang/python
17:50:21*PMunch joined #nim
17:53:05*brokencode joined #nim
17:58:30*perturbation joined #nim
18:02:33*perturbation quit (Ping timeout: 240 seconds)
18:09:23ulерфтлыб иге ш куфддн цфте здгпшты ещ цкшееут шт еру Тшь ещщ
18:09:27ulsorry
18:09:42ulthanks, but I really want plugins to be written in the Nim too
18:34:43ephjait should be possible
18:36:23ephjado we have any relevant guides?
18:43:18*Salewski joined #nim
18:43:54ephjais nimborg relevant? but it hasn't been updated for a long time, and it seems to trigger compiler bugs
18:44:05SalewskiMr Filwit gave a small example for plugin use in the forum: http://forum.nim-lang.org/t/1400#8714
18:44:19ephjagreat
18:46:14*Salewski quit (Client Quit)
18:47:10*chrisheller joined #nim
18:47:19*PMunch quit (Ping timeout: 244 seconds)
18:50:46*perturbation joined #nim
18:51:25*brokencode quit (Quit: My Mac has gone to sleep. ZZZzzz…)
18:57:19*Motan joined #nim
18:59:15*perturbation quit (Ping timeout: 276 seconds)
18:59:40*perturbation joined #nim
18:59:57*silven quit (Ping timeout: 250 seconds)
19:00:54*silven joined #nim
19:07:03ulwow! i guess that using symAddr it is even not needed to keep any table of symbols in the main app which should be filled by the plugin on load; i just need to have reasonable conventions
19:07:29ulanother question is how fast that resolving works
19:07:50uli ask because i want to unload and load again plugin dll from time to time
19:07:56ulbecause it will be recompiled
19:08:35ulif i will just resolve target function by symAddr on every call, will it add huge perf penalty?
19:10:29*perturba_ joined #nim
19:12:56*yglukhov_ joined #nim
19:12:56*yglukhov quit (Read error: Connection reset by peer)
19:14:52*brokencode joined #nim
19:14:52*yglukhov_ quit (Read error: Connection reset by peer)
19:14:52*perturba_ quit (Ping timeout: 260 seconds)
19:23:08*yglukhov joined #nim
19:24:04Motanhey folks, today is my first day with nim (long time python guy looking for something that is slightly more performant and i'm running into this issue)
19:24:06Motanhttp://pastebin.com/EtPLebbk
19:24:29Motani'm guessing i'm missing something subtle, but i can't figure it out
19:25:38Motanif anyone has an idea, copious amounts of punch and pie for all
19:30:00*brokencode left #nim ("Textual IRC Client: www.textualapp.com")
19:32:32*brson quit (Quit: leaving)
19:33:08ephjathe BContainer in [BContainer] is not referring the to the type that you created previously
19:35:01*desophos joined #nim
19:35:27ephjabut rather a generic symbol that can be instantiated with any type "proc p[T](x: T): T = x" and then "echo p(1)" or "echo p[int](1)"
19:35:41Motanah
19:35:44Motanso just remove that?
19:36:01Motanbingo, looks like i have a different problem now
19:36:27Motantrying to port https://github.com/peter-the-tea-drinker/nim-MCTS to 0.13.0
19:36:41Motanand i thought i had isolated the issue, maybe i was wrong - but at least it feels like progress
19:36:43ephja[int] can be omitted like in the first instantiation, since it has been implied already with the argument which is of type 'int'
19:36:57federico3Motan: btw are you sure you need methods instead of procs?
19:37:35ephjawere the issues related to generic methods resolved?
19:37:37Motani was trying to isolate the issue, it seems this code was made when a few things were different
19:38:09Motani think so? i'm getting the same issue in the Othello.nim file, going to see if i can reason about what's the actual problem
19:38:18*Motan hands out punch and pie, and party hats
19:39:18*Arrrr quit (Quit: WeeChat 1.4)
19:40:36ephjado you have any carrots?
19:40:50Motanalways
19:40:54*Motan tosses out carrots
19:43:11Motanok, another further question about generics:
19:43:14Motantype is defined as
19:43:16Motan TState* = ref object of RootObj
19:43:25Motan OthelloState* = ref object of TState
19:43:35Motanthe base method is
19:43:36Motanmethod GetMoves[M](state:TState):seq[M] {.base.} =
19:43:49Motanmethod GetMoves*(state: OthelloState):seq[Move] =
19:43:54Motanand that's the "child" method
19:44:03Motanfor some reason it seems they're disassociated
19:44:43Motanit's giving me at least this warning: othello.nim(106, 8) Warning: use {.base.} for base methods; baseless methods are deprecated [UseBase]
19:47:42*Ven joined #nim
19:51:35ephjamethod Yay(obj:MyType):seq[BContainer] = echo "MyType Yay"; return @[(b: 10)]
19:52:15Motanah, the colon, that's good to remember
19:53:07chrisheller ephja: what errors were you getting with Nimborg?
19:54:59chrishellerI have a Nimborg fork that was up to date with Nim (at least as of a month ago). https://github.com/chrisheller/NimBorg
19:56:16ul============================================================================ GlobalBenchmark relative time/iter iters/s ============================================================================ GlobalBenchmark 435.93ps 2.29G ============================================================================ main.nim relative ti
19:56:17ephjaMotan: "seq[Type]" instantiates 'seq' with 'Type', which does not require a generic parameter to be defined
19:56:34ephjaconsider this: "var x: seq[int]"
19:56:36ulsymAddr 113.17ns 8.84M
19:57:00ulanswering my own question: as think it's fast enough for many use-cases
19:57:25ephjachrisheller: I had to import map from sequtils
19:57:55Motanok
19:57:56ephjaand then I got an ICE with nim devel
19:57:58Motani think i'm understanding
19:59:28chrishellerI fixed the 'undeclared identifier: map' error as well, but haven't triggered any other problems. I should note that we're only using the Python side of Nimborg, not the Lua stuff
20:00:06ephja"proc p(): seq[int] = @[1, 2, 3]"
20:00:29ephjachrisheller: I was testing one of the tests
20:00:35ephjabut I haven't tried the fork
20:01:22chrishellerFeel free to open an issue. I can try to take a look.
20:11:57Motani'm seeing something super weird - the issue seems to go away when I move code around : http://pastebin.com/L75BQy5c
20:12:51Motani guess i need to define all generic perms before defining a proc that uses them?
20:16:50Motandouble strange, if i move the proc above the both declarations it works as well
20:16:54Motanjust doesn't work between them ><
20:27:12*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:32:21*space-wizard quit (Quit: My Mac has gone to sleep. ZZZzzz…)
20:34:41*endragor quit (Remote host closed the connection)
20:37:34*Trustable joined #nim
20:50:33ephjaMotan: it's by design
20:52:02*yglukhov quit (Remote host closed the connection)
20:52:04Motangotcha, so is there an idiomatic solution here? separate the virtual methods to a block at the end?
20:52:37*sora_kun joined #nim
20:52:38*yglukhov joined #nim
20:55:30*ul quit (Ping timeout: 250 seconds)
20:56:28ephjaMotan: yes
20:56:35Motancool thanks
20:56:40Motanreally appreciate the help
20:56:40ephjaor just the declaration, which forward declares it
20:56:45Motanright
20:56:57*yglukhov quit (Ping timeout: 260 seconds)
20:57:26ephja(everything except the body, so not '=' or anything after)
20:58:06ephjawhich is required in the case of mutual dependencies
20:59:22Motanyeah, i just didn't expect template permutations to require the same thing
20:59:24Motanmakes sense
21:11:24*perturba_ joined #nim
21:16:20*perturba_ quit (Ping timeout: 268 seconds)
21:23:13*sora_kun quit (Remote host closed the connection)
21:53:41*Demon_Fox joined #nim
22:18:44*yglukhov joined #nim
22:22:14*ephja quit (Ping timeout: 276 seconds)
22:23:32*yglukhov quit (Ping timeout: 276 seconds)
22:58:54*serioustime is now known as sillytime
23:03:01*ludocode quit (Quit: ludocode)
23:09:07*fredrik92 quit (Ping timeout: 250 seconds)
23:18:49*fredrik92 joined #nim
23:20:21*yglukhov joined #nim
23:25:17*yglukhov quit (Ping timeout: 276 seconds)
23:29:03*fredrik92 quit (Ping timeout: 250 seconds)
23:31:58*fredrik92 joined #nim
23:32:41*darkf joined #nim
23:33:29*fredrik92 quit (Read error: Connection reset by peer)
23:40:34*Trustable quit (Remote host closed the connection)
23:42:15*sillytime is now known as nchambers