00:00:30 | vikaton | Araq: install.bat |
00:01:07 | * | zaquest joined #nim |
00:04:36 | * | biscarch joined #nim |
00:04:36 | * | BitPuffin|osx joined #nim |
00:04:36 | * | M-Quora joined #nim |
00:08:41 | * | juanfra quit (Disconnected by services) |
00:08:46 | * | juanfra_ joined #nim |
00:08:57 | * | nicktick joined #nim |
00:12:26 | niv | i think i just found a way to run the GC against the wall :( |
00:12:38 | * | jakesyl joined #nim |
00:12:46 | * | vqrs quit (Ping timeout: 260 seconds) |
00:14:58 | * | vqrs joined #nim |
00:33:10 | * | nicktick quit (Ping timeout: 260 seconds) |
00:36:04 | * | nicktick joined #nim |
00:40:37 | * | akiradeveloper joined #nim |
01:18:17 | * | gokr quit (Quit: Leaving.) |
01:29:27 | * | akiradeveloper quit (Remote host closed the connection) |
01:35:09 | * | zepolen quit (Read error: Connection reset by peer) |
01:35:46 | * | zepolen joined #nim |
01:48:54 | * | zaquest quit (Ping timeout: 260 seconds) |
01:49:28 | * | zaquest joined #nim |
01:55:43 | * | [CBR]Unspoken quit (Ping timeout: 250 seconds) |
01:58:33 | * | [CBR]Unspoken joined #nim |
01:59:27 | * | Varriount-Laptop joined #nim |
02:06:22 | * | zepolen quit (Read error: Connection reset by peer) |
02:11:46 | * | zepolen joined #nim |
02:18:01 | * | Varriount-Laptop quit (Ping timeout: 246 seconds) |
02:19:34 | * | zepolen quit (Read error: Connection reset by peer) |
02:20:07 | * | zepolen joined #nim |
02:22:28 | * | LibreTurkey is now known as LibreWerewulf |
02:32:36 | nicktick | how to rebuild nimx after changing some files of nimx ? |
02:32:56 | ldlework | what's nimx |
02:33:08 | nicktick | https://github.com/yglukhov/nimx |
02:33:22 | nicktick | I installed nimx with nimble |
02:33:33 | ldlework | cool |
02:33:53 | nicktick | but I don't know how to rebuild it with nim directly. |
02:34:58 | ephja | the compiler does detect changes |
02:37:29 | nicktick | ephja, I don't know how to make those change take effect. |
02:38:20 | ephja | nicktick: you should just have to build your application again |
02:39:02 | ephja | dependent modules will then be recompiled if necessary |
02:39:24 | nicktick | (let me try...) |
02:40:16 | nicktick | (I changed one file of nimx,not the app file writen by myself) |
02:41:40 | nicktick | ephja , thx ,you're right! |
02:42:01 | * | zepolen quit (Read error: Connection reset by peer) |
02:42:38 | * | zepolen joined #nim |
02:46:38 | nicktick | if I opened two or more files into the edit area of Aporia(under windows), the edit area of Aporia will turn into dark. |
02:47:03 | nicktick | sorry, if I opened two or more files into Aporia(under windows), the edit area of Aporia will turn into dark. |
02:47:41 | nicktick | there is no such problem with Aporia under Linux. |
02:48:20 | * | juanfra_ quit (Quit: juanfra_) |
02:48:52 | * | juanfra joined #nim |
02:49:23 | * | theduke quit (Ping timeout: 264 seconds) |
02:53:08 | * | zepolen quit (Read error: Connection reset by peer) |
02:55:10 | * | ephja quit (Ping timeout: 260 seconds) |
02:55:42 | * | zepolen joined #nim |
03:01:32 | * | vendethiel joined #nim |
03:05:12 | * | zepolen quit (Read error: Connection reset by peer) |
03:07:50 | * | zepolen joined #nim |
03:17:08 | * | vikaton quit (Quit: Connection closed for inactivity) |
03:18:10 | * | theduke joined #nim |
03:18:22 | * | zepolen quit (Read error: Connection reset by peer) |
03:18:59 | * | zepolen joined #nim |
03:24:34 | * | vendethiel quit (Ping timeout: 260 seconds) |
03:28:56 | * | vikaton joined #nim |
03:29:22 | * | zepolen quit (Read error: Connection reset by peer) |
03:36:09 | * | zepolen joined #nim |
03:54:32 | * | zepolen quit (Read error: Connection reset by peer) |
03:55:12 | * | zepolen joined #nim |
04:00:02 | * | kniteli_ quit (Ping timeout: 260 seconds) |
04:24:55 | * | darkf_ joined #nim |
04:33:30 | * | pregressive joined #nim |
04:39:24 | * | zepolen quit (Read error: Connection reset by peer) |
04:40:00 | * | zepolen joined #nim |
04:50:29 | * | zepolen quit (Read error: Connection reset by peer) |
04:53:13 | * | zepolen joined #nim |
05:08:05 | * | pregressive quit (Remote host closed the connection) |
05:17:10 | * | darkf_ is now known as darkf |
05:31:40 | * | zepolen quit (Read error: Connection reset by peer) |
05:32:15 | * | zepolen joined #nim |
06:18:28 | * | filcuc joined #nim |
06:18:50 | * | zama_ quit (Ping timeout: 276 seconds) |
06:19:08 | * | s4 joined #nim |
06:20:25 | * | mnemonikk_ is now known as mnemonikk |
06:20:25 | * | mnemonikk quit (Changing host) |
06:20:25 | * | mnemonikk joined #nim |
06:20:33 | * | barosl__ joined #nim |
06:21:39 | * | nicktick1 joined #nim |
06:23:35 | * | nicktick quit (Ping timeout: 264 seconds) |
06:23:36 | * | sarlalian quit (Ping timeout: 264 seconds) |
06:23:36 | * | eldamar quit (Ping timeout: 264 seconds) |
06:23:41 | * | Demon_Fox quit (Ping timeout: 265 seconds) |
06:24:11 | * | barosl_ quit (Ping timeout: 264 seconds) |
06:25:06 | * | BitPuffin|osx quit (Ping timeout: 240 seconds) |
06:30:10 | * | vqrs quit (Ping timeout: 240 seconds) |
06:30:59 | * | eldamar joined #nim |
06:31:57 | * | zepolen_ joined #nim |
06:36:12 | * | Demon_Fox joined #nim |
06:37:56 | * | filcuc quit (*.net *.split) |
06:37:56 | * | zepolen quit (*.net *.split) |
06:37:56 | * | juanfra quit (*.net *.split) |
06:37:57 | * | gsingh93 quit (*.net *.split) |
06:37:57 | * | lyro quit (*.net *.split) |
06:38:09 | * | vqrs joined #nim |
06:41:24 | * | Demon_Fox quit (Quit: Leaving) |
06:43:11 | * | lyro joined #nim |
06:45:52 | * | gsingh93 joined #nim |
06:50:00 | * | zama joined #nim |
07:13:14 | * | girvo quit (Ping timeout: 260 seconds) |
07:37:08 | * | vikaton quit (Quit: Connection closed for inactivity) |
07:38:02 | * | zepolen joined #nim |
07:38:27 | * | zaquest quit (Quit: Leaving) |
07:41:38 | * | zepolen_ quit (Ping timeout: 243 seconds) |
07:44:30 | * | OmlkRoNiXz quit (Max SendQ exceeded) |
07:50:26 | * | nicktick1 quit (Ping timeout: 240 seconds) |
07:53:19 | * | OmIkRoNiXz joined #nim |
07:54:03 | * | nicktick joined #nim |
07:56:34 | * | zaquest joined #nim |
08:03:38 | * | yglukhov joined #nim |
08:14:53 | * | vqrs quit (Ping timeout: 266 seconds) |
08:14:56 | * | tomp quit (Remote host closed the connection) |
08:16:00 | * | gokr joined #nim |
08:16:44 | * | tomp joined #nim |
08:27:21 | * | lokulin quit (Ping timeout: 272 seconds) |
08:27:29 | * | r-ku- is now known as r-ku |
08:28:22 | * | juanfra joined #nim |
08:28:37 | * | JStoker quit (Ping timeout: 272 seconds) |
08:29:53 | * | n1ftyn8_ quit (Ping timeout: 272 seconds) |
08:32:12 | * | juanfra quit (*.net *.split) |
08:32:12 | * | clone1018__ quit (*.net *.split) |
08:32:12 | * | r-ku quit (*.net *.split) |
08:32:12 | * | BlaXpirit quit (*.net *.split) |
08:32:12 | * | makoLine quit (*.net *.split) |
08:32:13 | * | mlitwiniuk quit (*.net *.split) |
08:32:14 | * | BlaXpirit joined #nim |
08:32:16 | * | bjz quit (Max SendQ exceeded) |
08:32:16 | * | makoLine joined #nim |
08:32:26 | * | lokulin joined #nim |
08:32:26 | * | vqrs joined #nim |
08:32:29 | * | bjz joined #nim |
08:32:30 | * | r-ku joined #nim |
08:33:24 | * | n1ftyn8_ joined #nim |
08:35:57 | * | bjz_ joined #nim |
08:40:29 | * | pregressive joined #nim |
08:42:01 | * | r-ku quit (*.net *.split) |
08:42:01 | * | makoLine quit (*.net *.split) |
08:42:36 | * | bjz quit (*.net *.split) |
08:42:36 | * | vqrs quit (*.net *.split) |
08:46:32 | * | vqrs joined #nim |
08:47:48 | * | r-ku joined #nim |
08:50:18 | * | makoLine joined #nim |
08:59:22 | * | yglukhov_ joined #nim |
08:59:43 | * | lyro_ joined #nim |
09:02:07 | * | gunn joined #nim |
09:02:20 | * | lokulin_ joined #nim |
09:02:48 | * | makoLine quit (*.net *.split) |
09:02:48 | * | r-ku quit (*.net *.split) |
09:02:48 | * | vqrs quit (*.net *.split) |
09:02:48 | * | pregressive quit (*.net *.split) |
09:02:48 | * | bjz_ quit (*.net *.split) |
09:02:48 | * | n1ftyn8_ quit (*.net *.split) |
09:02:48 | * | BlaXpirit quit (*.net *.split) |
09:02:48 | * | lokulin quit (*.net *.split) |
09:02:48 | * | gokr quit (*.net *.split) |
09:02:48 | * | yglukhov quit (*.net *.split) |
09:02:48 | * | zaquest quit (*.net *.split) |
09:02:48 | * | nicktick quit (*.net *.split) |
09:02:48 | * | OmIkRoNiXz quit (*.net *.split) |
09:02:48 | * | zepolen quit (*.net *.split) |
09:02:49 | * | gsingh93 quit (*.net *.split) |
09:02:49 | * | lyro quit (*.net *.split) |
09:02:49 | * | barosl__ quit (*.net *.split) |
09:02:49 | * | darkf quit (*.net *.split) |
09:02:49 | * | theduke quit (*.net *.split) |
09:02:49 | * | biscarch quit (*.net *.split) |
09:02:49 | * | M-Quora quit (*.net *.split) |
09:04:25 | * | bjz joined #nim |
09:12:11 | * | gunn quit (Ping timeout: 264 seconds) |
09:12:12 | * | lyro_ quit (Ping timeout: 264 seconds) |
09:12:12 | * | yglukhov_ quit (Ping timeout: 264 seconds) |
09:12:49 | * | bjz quit (Ping timeout: 264 seconds) |
09:12:57 | * | makoLine joined #nim |
09:12:57 | * | r-ku joined #nim |
09:12:57 | * | n1ftyn8_ joined #nim |
09:12:57 | * | BlaXpirit joined #nim |
09:12:57 | * | gokr joined #nim |
09:12:57 | * | OmIkRoNiXz joined #nim |
09:12:57 | * | darkf joined #nim |
09:12:57 | * | theduke joined #nim |
09:12:57 | * | biscarch joined #nim |
09:12:57 | * | M-Quora joined #nim |
09:13:02 | * | zepolen joined #nim |
09:14:49 | * | yglukhov joined #nim |
09:14:49 | * | barosl joined #nim |
09:17:11 | * | enamex joined #nim |
09:20:28 | enamex | Was this down? |
09:20:39 | * | Ven joined #nim |
09:20:51 | enamex | Yup, it was. |
09:21:24 | * | gunn joined #nim |
09:22:01 | * | bjz joined #nim |
09:22:16 | * | gsingh93 joined #nim |
09:22:24 | enamex | I've just now installed the Nim package including the compiler and Aporia from the Nim website. I got a little program written on Aporia with around 20 'readline' calls trying to get the resulting exe to stay on screen when I choose compile&run. Nothing. |
09:23:25 | * | vqrs joined #nim |
09:24:00 | * | Ven_ joined #nim |
09:24:04 | * | zepolen_ joined #nim |
09:24:36 | * | barosl_ joined #nim |
09:24:48 | * | yglukhov_ joined #nim |
09:25:02 | * | enamex_ joined #nim |
09:30:35 | enamex_ | Now it's saying "execution of external program failed" |
09:33:09 | * | MyMind quit (Quit: WeeChat 1.4-dev) |
09:33:15 | * | Ven quit (*.net *.split) |
09:33:15 | * | enamex quit (*.net *.split) |
09:33:15 | * | barosl quit (*.net *.split) |
09:33:15 | * | yglukhov quit (*.net *.split) |
09:33:15 | * | zepolen quit (*.net *.split) |
09:33:16 | * | makoLine quit (*.net *.split) |
09:33:16 | * | r-ku quit (*.net *.split) |
09:33:16 | * | n1ftyn8_ quit (*.net *.split) |
09:33:16 | * | BlaXpirit quit (*.net *.split) |
09:33:16 | * | gokr quit (*.net *.split) |
09:33:16 | * | OmIkRoNiXz quit (*.net *.split) |
09:33:16 | * | darkf quit (*.net *.split) |
09:33:16 | * | theduke quit (*.net *.split) |
09:33:16 | * | biscarch quit (*.net *.split) |
09:33:16 | * | M-Quora quit (*.net *.split) |
09:34:31 | * | r-ku joined #nim |
09:34:31 | * | n1ftyn8_ joined #nim |
09:34:31 | * | BlaXpirit joined #nim |
09:34:31 | * | gokr joined #nim |
09:34:31 | * | OmIkRoNiXz joined #nim |
09:34:31 | * | darkf joined #nim |
09:34:31 | * | theduke joined #nim |
09:34:31 | * | biscarch joined #nim |
09:34:31 | * | M-Quora joined #nim |
09:34:39 | * | gunn quit (Max SendQ exceeded) |
09:43:44 | * | zaquest joined #nim |
09:46:31 | * | gunn joined #nim |
09:54:50 | enamex_ | Actually, looks like a problem with Aporia specifically. Or rather, with the resulting executables if they aren't run from cmdline |
09:55:17 | enamex_ | Running them with nim c -r works but opening the saved exe myself later doesn't :/ |
09:55:46 | * | zaquest quit (Ping timeout: 240 seconds) |
10:04:38 | * | juanfra joined #nim |
10:05:55 | * | niv quit (Excess Flood) |
10:06:03 | * | niv joined #nim |
10:07:07 | * | zaquest joined #nim |
10:14:24 | * | lyro_ joined #nim |
10:22:58 | * | s4 quit (Ping timeout: 246 seconds) |
10:23:18 | * | cromo quit (Ping timeout: 246 seconds) |
10:31:09 | * | n1ftyn8__ joined #nim |
10:32:06 | * | niv_ joined #nim |
10:32:53 | * | BlaXpirit_ joined #nim |
10:33:50 | * | sarlalian joined #nim |
10:34:01 | * | r-ku- joined #nim |
10:34:40 | * | M-Quora1 joined #nim |
10:34:45 | * | zaquest quit (*.net *.split) |
10:34:45 | * | niv quit (*.net *.split) |
10:34:46 | * | gunn quit (*.net *.split) |
10:34:46 | * | r-ku quit (*.net *.split) |
10:34:46 | * | n1ftyn8_ quit (*.net *.split) |
10:34:46 | * | BlaXpirit quit (*.net *.split) |
10:34:47 | * | gokr quit (*.net *.split) |
10:34:47 | * | OmIkRoNiXz quit (*.net *.split) |
10:34:47 | * | darkf quit (*.net *.split) |
10:34:47 | * | theduke quit (*.net *.split) |
10:34:47 | * | biscarch quit (*.net *.split) |
10:34:47 | * | M-Quora quit (*.net *.split) |
10:34:55 | * | niv_ is now known as niv |
10:34:55 | * | BlaXpirit_ is now known as BlaXpirit |
10:38:14 | * | Ven_ quit (Ping timeout: 240 seconds) |
10:39:50 | * | lokulin_ quit (Ping timeout: 264 seconds) |
10:40:09 | * | n1ftyn8__ is now known as n1ftyn8_ |
10:40:34 | * | mnemonikk quit (*.net *.split) |
10:40:34 | * | zxtx quit (*.net *.split) |
10:42:53 | * | gunn joined #nim |
10:42:54 | * | darkf joined #nim |
10:42:54 | * | theduke joined #nim |
10:42:54 | * | biscarch joined #nim |
10:45:58 | * | gunn quit (*.net *.split) |
10:45:58 | * | darkf quit (*.net *.split) |
10:45:58 | * | theduke quit (*.net *.split) |
10:45:58 | * | biscarch quit (*.net *.split) |
10:46:11 | * | lokulin joined #nim |
10:46:54 | * | gunn joined #nim |
10:46:54 | * | darkf joined #nim |
10:46:54 | * | theduke joined #nim |
10:46:54 | * | biscarch joined #nim |
12:11:12 | * | NimBot joined #nim |
12:11:18 | * | Ven joined #nim |
12:11:37 | * | mal`` joined #nim |
12:11:40 | * | bigfondue joined #nim |
12:11:42 | * | r-ku joined #nim |
12:11:55 | * | Sornaensis joined #nim |
12:11:56 | * | gokr joined #nim |
12:11:58 | * | BlaXpirit joined #nim |
12:13:00 | * | cyraxjoe joined #nim |
12:13:00 | * | M-Quora joined #nim |
12:13:08 | * | tymat joined #nim |
12:15:11 | * | Guest4360 quit (Ping timeout: 264 seconds) |
12:15:12 | * | CARAM__ quit (Ping timeout: 264 seconds) |
12:15:30 | * | BlaXpirit quit (Client Quit) |
12:15:48 | * | DecoPerson quit (Ping timeout: 264 seconds) |
12:15:53 | * | BlaXpirit joined #nim |
12:17:04 | * | BlaXpirit quit (Client Quit) |
12:21:33 | * | lokulin joined #nim |
12:25:11 | * | Learath2 joined #nim |
12:32:10 | * | xet7 quit (Quit: Leaving) |
12:42:03 | * | NimBot joined #nim |
12:43:41 | * | tymat joined #nim |
12:44:23 | * | bigfondue joined #nim |
12:45:33 | * | yglukhov joined #nim |
12:46:11 | * | r-ku joined #nim |
12:48:39 | * | M-Quora joined #nim |
12:48:51 | * | yglukhov quit (Remote host closed the connection) |
12:48:57 | * | lokulin joined #nim |
12:49:28 | * | heinrich5991 joined #nim |
12:53:00 | * | theduke quit (Ping timeout: 264 seconds) |
12:53:34 | * | Sornaensis joined #nim |
12:53:36 | * | enamex_ is now known as enamex |
12:54:41 | * | mal`` joined #nim |
12:54:43 | * | yglukhov joined #nim |
12:55:07 | niv | hi! is there a example on how to use the locks module? the official manual page speaks of TLock but that is flagged as deprecated. i tried implementing the template as listed there but it doesn't work in all cases (specifically when using yield/await inside the template it says it needs a inlined iterator ..?) |
13:03:11 | * | yglukhov quit (Ping timeout: 245 seconds) |
13:04:28 | * | pregressive joined #nim |
13:05:43 | * | gokr joined #nim |
13:08:30 | * | Jehan_ joined #nim |
13:08:45 | * | BlaXpirit joined #nim |
13:08:47 | * | pregressive quit (Ping timeout: 246 seconds) |
13:08:58 | * | theduke joined #nim |
13:09:52 | Jehan_ | niv: Use `Lock` instead of `TLock`. The deprecation exists purely because the type was renamed. |
13:10:27 | niv | alright. can you point me as to why the template would fail as it does? |
13:10:52 | niv | the exact error message is: Error: 'yield' cannot be used within 'try' in a non-inlined iterator |
13:11:23 | niv | the code is: https://gist.github.com/niv/70d9c1d9183560e67eab |
13:11:40 | niv | it's the "await" that triggers the problem, although I don't see how there's a iterator involved |
13:12:24 | * | biscarch quit (Remote host closed the connection) |
13:13:56 | * | CARAM__ joined #nim |
13:16:56 | * | DecoPerson joined #nim |
13:19:07 | * | BitPuffin joined #nim |
13:24:13 | * | CARAM__ quit (Ping timeout: 264 seconds) |
13:24:32 | * | CARAM__ joined #nim |
13:24:48 | * | BitPuffin quit (Ping timeout: 264 seconds) |
13:30:42 | * | sarlalian joined #nim |
13:37:09 | * | nicktick joined #nim |
13:40:31 | * | nicktick1 joined #nim |
13:43:23 | * | nicktick quit (Ping timeout: 272 seconds) |
13:46:45 | * | NhanH joined #nim |
13:48:40 | * | Guest4360 joined #nim |
13:49:06 | * | biscarch joined #nim |
13:50:27 | * | clone1018_ joined #nim |
13:52:19 | * | nicktick1 quit (*.net *.split) |
13:52:19 | * | sarlalian quit (*.net *.split) |
13:52:29 | * | ephja joined #nim |
13:55:17 | * | boopsies is now known as boopsiesisaway |
13:55:20 | * | gunn quit (Max SendQ exceeded) |
13:56:01 | * | gunn joined #nim |
13:59:47 | * | Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
14:02:06 | * | Guest4360 quit (Ping timeout: 240 seconds) |
14:02:38 | * | Guest4360 joined #nim |
14:04:42 | * | Ven joined #nim |
14:05:12 | dom96 | niv: The `async` macro converts the proc into an iterator. |
14:05:32 | niv | i've tried it without the template and that works. its just when wrapping the whole thing into a template that async fails |
14:11:54 | * | yglukhov joined #nim |
14:11:54 | * | yglukhov quit (Remote host closed the connection) |
14:13:15 | * | kniteli_ joined #nim |
14:13:19 | * | BitPuffin joined #nim |
14:15:20 | * | BitPuffin quit (Disconnected by services) |
14:15:22 | * | itPuffinB joined #nim |
14:16:28 | * | itPuffinB is now known as BitPuffin |
14:22:53 | ephja | niv: could you make it a compilable test case? that always helps |
14:23:22 | ephja | are you going to introduce multithreading? |
14:24:43 | niv | im just trying to figure out why stuff works the way it does. ill make a testcase in a minute |
14:27:07 | * | Guest4360 quit (*.net *.split) |
14:27:07 | * | clone1018_ quit (*.net *.split) |
14:27:09 | * | CARAM__ quit (*.net *.split) |
14:27:09 | * | flyx quit (*.net *.split) |
14:27:12 | * | darkf quit (*.net *.split) |
14:30:15 | * | nicktick joined #nim |
14:33:24 | * | yglukhov joined #nim |
14:33:31 | * | yglukhov quit (Remote host closed the connection) |
14:38:18 | ephja | ok |
14:39:41 | niv | ephja: https://gist.github.com/niv/70d9c1d9183560e67eab |
14:40:19 | niv | I can create a gh issue if you want. |
14:43:34 | * | yglukhov joined #nim |
14:47:47 | ephja | niv: "echo await(asy())", "echo(await asy())" or "echo(await(asy()))" does what you want I think |
14:47:59 | ephja | 'await' is just like any other expression, really |
14:48:28 | * | Guest4360 joined #nim |
14:48:28 | * | clone1018_ joined #nim |
14:48:28 | * | CARAM__ joined #nim |
14:48:28 | * | flyx joined #nim |
14:48:28 | * | darkf joined #nim |
14:49:16 | niv | that's .. disgusting. thanks, ephja |
14:49:46 | niv | I wonder why that template isn't in the stdlib locks module included though, considering how neccessary it is |
14:51:26 | ephja | what else? we don't have a haskell-like call syntax |
14:51:47 | niv | it's alright :) i didnt mean the syntax, just me missing it |
14:51:58 | ephja | niv: maybe because of lack of manpower |
14:52:06 | ephja | which has been the case for some time |
14:52:08 | ephja | right |
14:52:29 | niv | ah, yeah. i wasnt complaining either. i just thought there might be a reason it's not in that i can't see with my noob-glasses on |
14:53:25 | niv | i'm still confused though. adding the param parens works, but now the template crashes inside release() with Illegal storage access. |
14:53:43 | niv | the non-template variant still works |
14:59:12 | * | zepolen_ quit (Remote host closed the connection) |
15:02:27 | ephja | http://manual.nim-lang.org/docs/manual.html#exception-handling-defer-statement http://manual.nim-lang.org/docs/manual.html#type-bound-operations-destructors |
15:02:37 | * | Jehan_ quit (Quit: Leaving) |
15:03:29 | ephja | would these constructs help? but destructors are still considered experimental |
15:03:52 | ephja | such a template might be useful regardless. feel free to create PR and see if anyone agrees |
15:03:55 | niv | it's not that i lack a dtor, i think. it's that release() SIGSEGVs when inside the template, but works outside of it |
15:04:32 | niv | the defer: one is nice though :) |
15:04:44 | * | zepolen joined #nim |
15:05:31 | * | pregressive joined #nim |
15:06:12 | * | gokr quit (Quit: Leaving.) |
15:08:18 | ephja | yes that's a different issue |
15:09:25 | * | pregressive quit (Ping timeout: 240 seconds) |
15:10:01 | niv | on OSX it says: Error: unhandled exception: no exception to reraise but when i try to trap it, then there's no exception |
15:12:32 | ephja | Isn't 'raise' without arguments (or "re-raise") limited to 'except' blocks? I don't understand what this means |
15:12:56 | niv | fwiw, here's the code: https://gist.github.com/niv/70d9c1d9183560e67eab looks like a bug to me |
15:15:44 | * | zepolen quit (Remote host closed the connection) |
15:18:12 | ephja | or maybe not http://manual.nim-lang.org/docs/manual.html#exception-handling-raise-statement |
15:18:53 | dom96 | niv: It fails in a template because the 'async' macro does not know that the template contains 'await' statements in a try statement. |
15:18:54 | ephja | uh oh, bad "see source" link: https://github.com/nim-lang/Nim/tree/master/lib/core/c:/users/anwender/projects/nimrod/lib/system/syslocks.nim#L14 |
15:19:03 | dom96 | It does not "see" that code |
15:19:18 | dom96 | It has to transform the code so that no 'await's are in a try block |
15:19:40 | dom96 | Just so you know, that transformation is full of bugs too |
15:19:45 | niv | mmmhh. how can i make this template work then? |
15:19:58 | dom96 | I would recommend you try your best not to put 'await' in a try |
15:20:24 | niv | i kind of have to when i want to lock access to a resource that is awaited on |
15:21:03 | ephja | there's not a repo for the website itself? I guess I'll submit a report in Nim then |
15:21:44 | dom96 | niv: Why do you want to do that? |
15:22:27 | niv | this is still about my redis playground implementation. i need to barrier commands so they don't interleave due to the reply/response nature of the wire protocol |
15:22:49 | niv | but i want the impl to be async |
15:23:18 | ephja | it's not necessary, is it? |
15:23:35 | niv | so what i do is just warp sendCommand/receiveCommand into a lock |
15:23:48 | niv | wrap .. not warp .. :) |
15:24:24 | niv | async is definitely necessary, because redis connections can also serve as pubsub channels, so listeners mustnt block the main thread |
15:24:30 | dom96 | So what is the problem? The 'defer'? |
15:24:55 | niv | the problem is the release() call inside the template |
15:25:05 | dom96 | I don't think a lock is necessary, just use a simple bool? |
15:25:07 | niv | if i implement the template manually at each location it works fine |
15:25:45 | niv | i guess it isnt neccessary for it to be a mutex, no |
15:26:04 | ephja | I'd suggest that you also read existing code that uses asyncdispatch https://github.com/nim-lang/Nim/blob/master/lib/pure/asyncdispatch.nim#L1575 |
15:26:16 | ephja | it made things more obvious for me |
15:26:35 | niv | i was using a mutex so i can just let the OS tell me about when the connection becomes available again |
15:26:51 | niv | for a bool or any other non-signal source i'd have to busywait .. |
15:27:27 | * | Jehan_ joined #nim |
15:27:54 | dom96 | How about you create a queue, once the a response is received for a command pop the next command from the queue. |
15:27:58 | dom96 | *once a |
15:28:38 | dom96 | The connection becomes available when you received a reply from redis right? |
15:29:21 | niv | yeah, the redis connection is strictly synchronous. request/response pairs. |
15:30:03 | niv | queues don't solve the busywaiting problem either without some sort of waiting mutex |
15:30:54 | dom96 | You can make use of the Future's callback though |
15:32:04 | dom96 | let resp = await sock.recvLine() |
15:32:26 | dom96 | if client.queue.len > 0: await sendQueuedCommand(client.queue) |
15:32:38 | niv | right |
15:32:51 | niv | im not sure a queue is a good idea. adds complexity and failure modes i dont care for |
15:33:19 | dom96 | How do you plan on doing it? |
15:33:28 | dom96 | Blocking until the lock is released? |
15:34:23 | dom96 | As soon as you block you defeat the purpose of async |
15:34:51 | niv | fair enough |
15:35:51 | niv | the thought was that it would never block longer than it would take to read/write the actual data off the socket |
15:36:40 | ephja | other callback examples appear in `or` and `and` in asyncdispatch |
15:38:18 | niv | thanks, i'll check it out and think about it some more :) |
15:39:34 | ephja | "await send(...); await recv(...)"? |
15:40:24 | * | zepolen joined #nim |
15:40:24 | niv | that would allow another async "fiber" to interleave between the send and recv |
15:46:55 | ephja | yes if you don't wait for anything before that |
15:52:20 | * | nicktick1 joined #nim |
15:53:47 | * | Jehan_ quit (Ping timeout: 250 seconds) |
15:53:47 | * | NhanH quit (Ping timeout: 250 seconds) |
15:54:38 | * | NhanH joined #nim |
15:54:39 | * | nicktick quit (Ping timeout: 250 seconds) |
15:55:12 | * | Jehan_ joined #nim |
16:04:05 | * | Demon_Fox joined #nim |
16:14:32 | * | Jehan_ quit (Read error: Connection reset by peer) |
16:19:03 | * | elrood joined #nim |
16:19:30 | * | clone1018_ quit () |
16:21:50 | * | clone1018 joined #nim |
16:23:11 | * | Jehan_ joined #nim |
16:26:07 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
16:28:33 | * | Ven joined #nim |
16:45:22 | * | sarlalian joined #nim |
16:46:19 | * | Ven quit (*.net *.split) |
16:46:20 | * | Jehan_ quit (*.net *.split) |
16:46:20 | * | clone1018 quit (*.net *.split) |
16:46:20 | * | elrood quit (*.net *.split) |
16:46:23 | * | Demon_Fox quit (*.net *.split) |
16:46:24 | * | NhanH quit (*.net *.split) |
16:46:26 | * | Guest4360 quit (*.net *.split) |
16:46:27 | * | CARAM__ quit (*.net *.split) |
16:46:27 | * | flyx quit (*.net *.split) |
16:46:29 | * | darkf quit (*.net *.split) |
16:53:08 | * | zaquest joined #nim |
16:53:24 | * | saml_ joined #nim |
16:55:52 | * | Demon_Fox joined #nim |
16:56:18 | * | Jehan_ joined #nim |
16:56:18 | * | clone1018 joined #nim |
16:56:18 | * | NhanH joined #nim |
16:56:18 | * | Guest4360 joined #nim |
16:56:18 | * | CARAM__ joined #nim |
16:56:18 | * | flyx joined #nim |
16:56:18 | * | darkf joined #nim |
17:12:40 | * | girvo joined #nim |
17:13:24 | * | zepolen quit (Remote host closed the connection) |
17:17:35 | * | girvo quit (Ping timeout: 264 seconds) |
17:23:22 | * | cyraxjoe_ is now known as cyraxjoe |
17:24:29 | * | boopsiesisaway is now known as boopsies |
17:24:48 | * | zxtx quit (Ping timeout: 240 seconds) |
17:27:07 | * | mnemonikk quit (Ping timeout: 240 seconds) |
17:27:53 | * | Demon_Fox quit (*.net *.split) |
17:27:53 | * | saml_ quit (*.net *.split) |
17:31:24 | * | Jehan_ quit (Read error: Connection reset by peer) |
17:38:26 | * | saml_ joined #nim |
17:38:55 | * | Demon_Fox joined #nim |
17:39:58 | * | Jehan_ joined #nim |
17:40:47 | * | saml_ quit (Max SendQ exceeded) |
17:44:22 | * | saml_ joined #nim |
17:44:22 | * | Jehan_ quit (Ping timeout: 246 seconds) |
17:45:01 | * | saml_ quit (Max SendQ exceeded) |
17:50:57 | niv | seems like finally: runs twice if you nest asyncs .. |
17:50:58 | * | Jehan_ joined #nim |
17:53:04 | * | darkf quit (Quit: Leaving) |
17:55:48 | * | Jehan_ quit (Ping timeout: 245 seconds) |
17:56:25 | * | elrood joined #nim |
17:59:53 | avsej | Araq, https://github.com/nim-lang/Nim/pull/3598/files |
18:04:13 | * | ldlework quit (Ping timeout: 247 seconds) |
18:05:35 | * | yglukhov quit (Ping timeout: 272 seconds) |
18:05:42 | * | Jehan_ joined #nim |
18:05:52 | * | nicktick1 quit (Quit: Leaving.) |
18:21:46 | * | zxtx joined #nim |
18:22:54 | * | zepolen joined #nim |
18:23:47 | * | zepolen quit (Remote host closed the connection) |
18:23:59 | * | zepolen joined #nim |
18:25:22 | * | ldlework joined #nim |
18:29:59 | * | Jehan_ quit (Read error: Connection reset by peer) |
18:37:57 | ephja | niv: and nothing else runs twice? |
18:38:25 | niv | its some weird case with awaits, try and futures. i pretty much gave up in that now. |
18:43:54 | * | zepolen quit (Remote host closed the connection) |
18:44:19 | * | pregressive joined #nim |
18:44:31 | * | pregressive quit (Remote host closed the connection) |
18:45:24 | * | pregressive joined #nim |
18:46:40 | theduke | anyone using concepts for anything more than simple tests? are they relatively stable? |
18:46:54 | theduke | or at least usable |
18:47:35 | ephja | it's not usable |
18:48:16 | ephja | there are some very common patterns that don't work |
18:51:09 | theduke | ephja: shame. guess i'll stick to a type hierarchy then |
18:51:26 | theduke | what common patterns, for example? |
18:52:11 | ephja | https://github.com/nim-lang/Nim/labels/Concept%5BT%5D |
18:54:26 | ephja | I think these issues will be fixed some time after 1.0. zah seems to be occupied with other things still |
18:55:29 | ephja | niv: ok. please file another report if you can. it would be nice to have it in a decent state by the time 1.0 is released |
18:56:56 | niv | i will tomorrow, i've had enough about this for today :) |
18:57:51 | ephja | I've commented out quite a few buggy things along with a link to the issue in question |
18:58:31 | theduke | don't get me wrong, i really love nim, it's a great language. but after spending two weeks with it now, and considering how easy it is to get c compiler errors or completely unhelpful error messages, completely broken lib modules (db_postgres), and totally unstable things like concepts. memory leaks with features like async... i think nim is nowhere near a point where it should be released as 1.0 |
19:01:09 | * | yglukhov joined #nim |
19:01:18 | theduke | it's understandable because nim does A LOT and has a lot of great features, but no organization with money behind it... sadly |
19:05:28 | theduke | niv: i hope your redis client will be open source, i will need one of those soon |
19:05:35 | * | yglukhov quit (Ping timeout: 264 seconds) |
19:07:10 | niv | theduke: its just a playground/sandbox atm. i cant get async to work reliably |
19:07:11 | ephja | there's also an official library |
19:07:19 | ephja | wasn't there a link to the documentation? |
19:07:21 | niv | you can have all of it if you want but its broken. ;) |
19:09:23 | ephja | theduke: I don't think we're following the usual release cycle |
19:12:32 | ephja | fun fact: the previous ETA was "before 2015" ;) |
19:13:34 | * | girvo joined #nim |
19:17:19 | * | Matthias247 joined #nim |
19:18:11 | * | girvo quit (Ping timeout: 264 seconds) |
19:19:28 | * | xet7 joined #nim |
19:29:00 | * | pregressive quit (Remote host closed the connection) |
19:41:18 | dom96 | niv: Like I said: try + await is still buggy. The way it currently works is very hackish and I would suggest avoiding 'await' inside a try statement. |
19:42:00 | niv | yea |
19:51:09 | * | brson joined #nim |
19:51:35 | * | makoLine joined #nim |
19:54:54 | * | yglukhov joined #nim |
19:59:34 | * | zepolen joined #nim |
20:03:23 | * | BitPuffin quit (Ping timeout: 272 seconds) |
20:04:23 | * | zepolen quit (Ping timeout: 264 seconds) |
20:05:34 | * | yglukhov quit (Remote host closed the connection) |
20:05:56 | * | makoLine quit (Ping timeout: 246 seconds) |
20:12:55 | * | kniteli_ quit (Remote host closed the connection) |
20:14:40 | * | kniteli joined #nim |
20:22:40 | * | makoLine joined #nim |
20:26:13 | NimBot | nim-lang/Nim devel 6e67b94 Sergey Avseyev [+0 ±1 -0]: fix path to nativesockets |
20:26:13 | NimBot | nim-lang/Nim devel cc6d9f6 Dominik Picheta [+0 ±1 -0]: Merge pull request #3598 from avsej/devel... 2 more lines |
20:28:34 | * | gokr joined #nim |
20:52:51 | * | xet7 quit (Quit: Leaving) |
21:11:29 | * | vendethiel joined #nim |
21:12:57 | * | gokr quit (Quit: Leaving.) |
21:13:01 | theduke | guys |
21:13:13 | theduke | anyone got a signal handler working and can show me the code? |
21:13:26 | theduke | can't seem to get it right |
21:13:34 | * | pregressive joined #nim |
21:14:14 | * | girvo joined #nim |
21:14:49 | * | zepolen joined #nim |
21:19:23 | * | girvo quit (Ping timeout: 264 seconds) |
21:19:26 | * | zepolen quit (Ping timeout: 246 seconds) |
21:31:44 | * | jaco60 joined #nim |
21:32:59 | * | gokr joined #nim |
21:39:14 | * | vqrs quit (Ping timeout: 260 seconds) |
21:42:40 | * | vqrs joined #nim |
22:09:47 | * | vendethiel quit (Ping timeout: 264 seconds) |
22:13:26 | * | vendethiel joined #nim |
22:14:28 | * | pregressive quit (Remote host closed the connection) |
22:33:27 | * | brson quit (Quit: leaving) |
22:48:03 | * | BitPuffin|osx joined #nim |
22:54:16 | * | onionhammer joined #nim |
22:59:13 | * | ephja quit (Read error: Connection reset by peer) |
23:04:04 | * | yglukhov joined #nim |
23:04:44 | * | yglukhov quit (Remote host closed the connection) |
23:06:43 | * | elrood quit (Quit: Leaving) |
23:07:47 | * | boopsies is now known as boopsiesisaway |
23:14:57 | * | girvo joined #nim |
23:15:48 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:19:29 | * | girvo quit (Ping timeout: 246 seconds) |
23:29:35 | * | gokr quit (Ping timeout: 264 seconds) |
23:35:35 | * | lokulin quit (Ping timeout: 264 seconds) |
23:41:31 | * | yglukhov joined #nim |
23:41:36 | * | yglukhov quit (Remote host closed the connection) |
23:43:51 | * | lokulin joined #nim |
23:47:35 | * | Demon_Fox quit (Ping timeout: 264 seconds) |
23:47:37 | * | zxtx quit (Ping timeout: 240 seconds) |
23:48:34 | * | makoLine quit (Ping timeout: 264 seconds) |
23:49:31 | * | makoLine joined #nim |