00:00:56 | * | vendethiel joined #nim |
00:01:03 | * | Siecje joined #nim |
00:06:38 | * | intra quit (Ping timeout: 272 seconds) |
00:08:29 | jaco60 | if you're interested for a nim plugin for the IntelliJ IDEA, please vote: https://plugins.jetbrains.com/wishlist/show?pr=&wid=503 |
00:11:24 | * | shevy joined #nim |
00:12:49 | * | yglukhov___ joined #nim |
00:15:57 | * | vbtt_ quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
00:17:34 | * | yglukhov___ quit (Ping timeout: 264 seconds) |
00:23:41 | * | vendethiel quit (Ping timeout: 244 seconds) |
00:28:01 | * | kumul quit (Ping timeout: 255 seconds) |
00:32:58 | * | brson quit (Quit: leaving) |
00:38:14 | * | pragamic joined #nim |
00:38:20 | pragamic | Hi |
00:38:31 | * | brson joined #nim |
00:39:51 | pragamic | Are buffer overflows usual in Nim ? |
00:41:44 | Varriount | pragamic: Only if you have bounds checking turned off. |
00:42:15 | Varriount | Well, I should say, they're much more possible with bounds checking turned off. |
00:42:47 | Varriount | Iterators and such tend to mitigate overflows. |
00:44:01 | * | pragamic quit (Ping timeout: 246 seconds) |
00:45:25 | * | jaco60 quit (Ping timeout: 265 seconds) |
00:58:15 | * | pregressive joined #nim |
00:58:36 | * | Kingsquee quit (Quit: Konversation terminated!) |
00:58:37 | * | dtscode joined #nim |
01:15:13 | * | charmander quit (Quit: Leaving) |
01:21:21 | * | gsingh93 quit (Ping timeout: 276 seconds) |
01:23:08 | * | brson quit (Quit: leaving) |
01:26:23 | * | dtscode quit (Quit: ZNC - 1.6.0 - http://znc.in) |
01:26:38 | * | dtscode joined #nim |
01:35:31 | * | DecoPerson quit (Read error: Connection reset by peer) |
01:35:46 | * | endou_________ quit (Read error: Connection reset by peer) |
01:36:01 | * | clone1018 quit (Read error: Connection reset by peer) |
01:36:02 | * | AckZ quit (Read error: Connection reset by peer) |
01:36:02 | * | CARAM__ quit (Read error: Connection reset by peer) |
01:37:38 | * | DecoPerson joined #nim |
01:40:33 | * | endou_________ joined #nim |
01:42:37 | * | saml_ joined #nim |
01:43:03 | * | CARAM__ joined #nim |
01:47:48 | * | clone1018 joined #nim |
01:47:57 | * | AckZ joined #nim |
01:58:51 | * | gsingh93 joined #nim |
02:09:22 | * | darkf joined #nim |
02:15:50 | * | gsingh93 quit (Ping timeout: 272 seconds) |
02:21:20 | * | vendethiel joined #nim |
02:29:13 | * | xificurC quit (Remote host closed the connection) |
02:30:03 | * | xificurC joined #nim |
02:31:56 | * | pregressive quit (Remote host closed the connection) |
02:35:04 | * | skyfex______ quit (Quit: (null)) |
02:38:19 | * | Siecje quit (Read error: Connection reset by peer) |
02:43:09 | * | vendethiel quit (Ping timeout: 250 seconds) |
03:00:03 | * | xificurC_ joined #nim |
03:00:18 | * | xificurC quit (Ping timeout: 256 seconds) |
03:17:16 | * | BitPuffin|osx quit (Ping timeout: 272 seconds) |
03:26:26 | * | saml_ quit (Ping timeout: 265 seconds) |
03:38:04 | * | phi_freenode joined #nim |
04:01:37 | * | johnsoft quit (Ping timeout: 264 seconds) |
04:02:52 | * | johnsoft joined #nim |
04:03:57 | * | jefus quit (Quit: Leaving) |
04:04:39 | * | jefus joined #nim |
04:04:48 | * | jefus_ joined #nim |
04:08:27 | * | jefus_ quit (Client Quit) |
04:18:10 | * | johnsoft quit (Ping timeout: 264 seconds) |
04:23:04 | * | johnsoft joined #nim |
04:25:55 | * | Kingsquee joined #nim |
04:32:04 | * | Varriount quit (Read error: Connection reset by peer) |
04:34:10 | * | Varriount joined #nim |
04:37:19 | * | johnsoft quit (Ping timeout: 255 seconds) |
04:42:55 | * | johnsoft joined #nim |
04:48:21 | * | endragor joined #nim |
04:57:18 | * | johnsoft quit (Ping timeout: 265 seconds) |
05:01:17 | * | endragor quit () |
05:02:55 | * | johnsoft joined #nim |
05:18:01 | * | johnsoft quit (Ping timeout: 265 seconds) |
05:22:52 | * | johnsoft joined #nim |
05:38:13 | * | johnsoft quit (Ping timeout: 264 seconds) |
05:42:57 | * | johnsoft joined #nim |
05:48:24 | * | BlaXpirit joined #nim |
05:53:21 | * | sepisoad joined #nim |
05:58:12 | * | johnsoft quit (Ping timeout: 265 seconds) |
06:03:08 | * | johnsoft joined #nim |
06:17:46 | * | johnsoft quit (Ping timeout: 272 seconds) |
06:21:07 | * | milosn quit (Ping timeout: 250 seconds) |
06:22:35 | * | sepisoad_ joined #nim |
06:22:53 | * | johnsoft joined #nim |
06:24:49 | * | sepisoad quit (Ping timeout: 245 seconds) |
06:36:54 | * | johnsoft quit (Ping timeout: 245 seconds) |
06:39:45 | * | reactormonk quit (Ping timeout: 256 seconds) |
06:41:56 | * | yglukhov___ joined #nim |
06:42:57 | * | johnsoft joined #nim |
06:43:03 | * | milosn joined #nim |
06:54:20 | * | sepisoad joined #nim |
06:56:20 | * | dtscode_ joined #nim |
06:57:11 | * | dtscode_ quit (Remote host closed the connection) |
06:57:38 | * | johnsoft quit (Ping timeout: 252 seconds) |
06:58:50 | * | sepisoad_ quit (Quit: Leaving) |
07:01:13 | * | Ven joined #nim |
07:03:04 | * | johnsoft joined #nim |
07:07:03 | dtscode | Generally speaking, which generates better code? The C backend or the c++ backend? |
07:10:23 | strcmp1 | donno. my uneducated guess would be the C backend. |
07:10:23 | * | mtj_ quit (Remote host closed the connection) |
07:10:38 | dtscode | hmmm |
07:11:05 | * | mtj_ joined #nim |
07:13:56 | cazov | I'd guess they're about the same, minus any weirdness like using iostreams or stuff like that. I can't imagine the C++ backend generates code that is very much different from the C backend, minus any necessary differences to make things `C++-nice` |
07:17:34 | * | johnsoft quit (Ping timeout: 256 seconds) |
07:17:48 | * | dddddd joined #nim |
07:23:03 | * | johnsoft joined #nim |
07:29:50 | Varriount | dtscode: The C backend is the most tested of the two (due to being the default). As cazov says, they're probably about the same, however the C++ backend might have more bugs. |
07:30:07 | dtscode | Damn :/ |
07:31:01 | Varriount | dtscode: On the other hand, if you use the C++ backend, you can help find the bugs. :D |
07:32:34 | dtscode | Varriount: Of course I will do that :D. I love pestering and annoying dom96/araq with bug reports, but I was hoping the c++ codegen wasn't as tight as the C codegen, and then I was hoping I could write code by hand that could out perform the c++ generated stuff. |
07:32:51 | dtscode | But, thats a pipe dream if araq got it as good as the C codegen |
07:33:23 | Varriount | dtscode: There's only one way to know for sure... |
07:33:42 | dtscode | Eh. I know I can't. I'll stick to what I do best |
07:34:07 | Varriount | I'd say a good start would be to benchmark the Nim compiler compiled with the C backend vs the Nim compiler compiled with the C++ backend |
07:38:21 | * | johnsoft quit (Ping timeout: 272 seconds) |
07:39:53 | * | wuehlmaus joined #nim |
07:42:57 | * | johnsoft joined #nim |
07:50:06 | sepisoad | how can we share a ref object like AsyncSocket among threads, I tried every possible way, like channels and allocshared but I cannot get them work for me |
07:51:00 | sepisoad | i need to close an socket which is being used by another thread to recv data from clients |
07:55:34 | * | Aazeen joined #nim |
07:55:47 | * | Aazeen is now known as basp |
07:56:27 | * | intra joined #nim |
07:57:45 | * | johnsoft quit (Ping timeout: 250 seconds) |
07:59:11 | Varriount | sepisoad: Have you passed the AsyncSocket as a pointer, instead of a ref? |
07:59:40 | Varriount | References passed between channels are deepcopied |
07:59:57 | sepisoad | i tried creating a AsyncSocket pointer using createShared() proc |
08:00:08 | Varriount | And? |
08:00:25 | sepisoad | but the compiler still complains that the object is GC safe and cannot be shared |
08:01:06 | sepisoad | then I decided to send the AsyncSocket object through a channel |
08:01:24 | sepisoad | but again compiler refuses to accept the code |
08:01:35 | Varriount | Hm. |
08:01:37 | sepisoad | now my code is going to be mess |
08:01:53 | Varriount | sepisoad: Araq might be able to help. |
08:01:59 | sepisoad | maybe i can show you the code |
08:02:16 | Varriount | sepisoad: That would be good. I can't promise that I can be of too much help. |
08:02:28 | Varriount | I don't do much multithreaded programming. |
08:02:46 | sepisoad | ok, i'm cleaning up my code, maybe that helps |
08:03:04 | * | johnsoft joined #nim |
08:13:53 | sepisoad | Varriount, Araq : this is my code: |
08:13:54 | sepisoad | https://gist.github.com/4c3009dbee8e2dc27ee8.git |
08:14:16 | sepisoad | Error: 'server' is not GC-safe as it accesses 'sockServer' which is a global using GC'ed memory |
08:15:55 | Varriount | sepisoad: Uh, is that a link to a file, or a git repository? |
08:16:05 | Varriount | I'd rather not download anything. |
08:16:12 | sepisoad | it's a gist |
08:16:23 | sepisoad | not it's now a download link |
08:16:34 | Varriount | Yes, however all I get is a blank page. |
08:16:54 | sepisoad | wait in min... |
08:16:59 | Varriount | Also, it's got '.git' on the end, which is usually meant for downloading via git |
08:17:21 | sepisoad | what about this link: |
08:17:22 | sepisoad | https://gist.github.com/sepisoad/4c3009dbee8e2dc27ee8 |
08:17:31 | Varriount | Yes, that works. |
08:17:35 | sepisoad | sorry Varriount |
08:17:41 | sepisoad | my bad |
08:18:06 | * | johnsoft quit (Ping timeout: 272 seconds) |
08:19:15 | Varriount | sepisoad: Try 'ptr AsynSocketObj' |
08:19:28 | Varriount | http://nim-lang.org/docs/asyncio.html#AsyncSocket |
08:19:46 | Varriount | ptr AsyncSocket is a pointer to a reference - maybe that's the problem? |
08:20:08 | sepisoad | but that object is not accessible it's local to the file where it's being defined |
08:20:14 | Varriount | Hrm. |
08:20:59 | sepisoad | I know what you are trying to say |
08:21:06 | Varriount | Um, AsyncSocketObj isn't private. |
08:21:14 | Varriount | https://github.com/Araq/Nim/blob/master/lib/pure/asyncio.nim#L128 |
08:21:49 | sepisoad | Error: undeclared identifier: 'AsyncSocketObj' |
08:22:19 | sepisoad | ooops |
08:22:21 | sepisoad | sorry |
08:22:53 | sepisoad | i'm using AsyncSocket from asyncnet module |
08:23:06 | * | johnsoft joined #nim |
08:23:11 | sepisoad | it is a ref object of AsyncSocketDesc |
08:23:25 | sepisoad | AsyncSocketDesc itself is not accessible |
08:25:44 | sepisoad | what you mentioned is AsyncSocketObj from asyncio module, however this module is deprecated |
08:26:22 | Varriount | Ah, I see. |
08:26:47 | Varriount | sepisoad: I think I'll need to defer to Araq and dom96 on this... |
08:27:30 | sepisoad | i wish there was a section in nim website that could comprehensively cover nim thread model and all the sharing stuff |
08:27:47 | Varriount | sepisoad: You and me both. |
08:28:18 | sepisoad | Varriount, ;) |
08:32:41 | sepisoad | BTW, if Araq, dom96 other anyone else can comment under the gist page I would appreciate, because sometimes i lose track of irc channel |
08:32:46 | * | dtscode is now known as to |
08:32:53 | * | to is now known as dtscode |
08:34:58 | * | jaco60 joined #nim |
08:35:55 | * | Aszarsha joined #nim |
08:35:55 | * | Aszarsha_ joined #nim |
08:36:57 | * | johnsoft quit (Ping timeout: 240 seconds) |
08:37:46 | * | dtscode is now known as dtscode_ |
08:39:05 | Varriount | sepisoad: I got it to compile... |
08:39:18 | sepisoad | Varriount, how? |
08:39:19 | Varriount | But only by making AsyncSocketDesc public. |
08:39:30 | Varriount | And I don't know if it will run. |
08:39:51 | sepisoad | Varriount, you changed the module? |
08:39:58 | Varriount | Yeah |
08:40:22 | * | Aszarsha_ quit (Ping timeout: 264 seconds) |
08:40:29 | sepisoad | haha, but that's a hack, kinda |
08:40:54 | * | Aszarsha quit (Ping timeout: 272 seconds) |
08:41:08 | Varriount | And... it doesn't run. :< |
08:41:17 | Varriount | Error: unhandled exception: An operation was attempted on something that is not a socket. |
08:41:20 | * | dtscode_ is now known as charmander |
08:41:28 | sepisoad | cool ;) |
08:41:42 | * | filcuc joined #nim |
08:41:47 | Varriount | sepisoad: I like Nim, I really do... but threading is one of its big weaknesses. |
08:42:34 | sepisoad | Varriount, so do i, i wish there was a simple way of sharing ref variables in nim |
08:42:46 | Varriount | For one thing, people simply aren't used to thinking of multi-threaded design within the constraints imposed by Nim |
08:43:08 | Varriount | Another thing is something like this - It's not straighforward when you want to do something unsafe. |
08:43:08 | * | johnsoft joined #nim |
08:43:27 | Varriount | Anyway, I need to get to bed. Good luck. |
08:44:05 | sepisoad | sweet dreams pal |
08:45:02 | * | Aszarsha joined #nim |
08:45:05 | * | Aszarsha_ joined #nim |
08:45:16 | * | Aszarsha quit (Remote host closed the connection) |
08:45:19 | * | Aszarsha_ quit (Remote host closed the connection) |
08:45:25 | * | coffeepot joined #nim |
08:47:51 | * | wuehlmaus quit (Quit: Aus, die Maus) |
08:52:24 | * | banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
08:53:51 | * | wuehlmaus joined #nim |
08:57:11 | * | johnsoft quit (Ping timeout: 252 seconds) |
09:03:02 | * | johnsoft joined #nim |
09:07:07 | * | ingsoc joined #nim |
09:08:23 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
09:17:12 | * | Tennis joined #nim |
09:17:12 | * | Tennis quit (Changing host) |
09:17:12 | * | Tennis joined #nim |
09:17:24 | * | johnsoft quit (Ping timeout: 244 seconds) |
09:18:49 | * | Demon_Fox quit (Quit: Leaving) |
09:22:28 | * | xificurC_ quit (Quit: WeeChat 1.2) |
09:22:47 | * | xificurC joined #nim |
09:23:09 | * | johnsoft joined #nim |
09:34:47 | * | banister joined #nim |
09:35:20 | * | basp left #nim ("Leaving") |
09:36:57 | * | johnsoft quit (Ping timeout: 240 seconds) |
09:42:55 | * | johnsoft joined #nim |
09:52:23 | * | filwit quit (Quit: Leaving) |
09:57:44 | * | johnsoft quit (Ping timeout: 245 seconds) |
09:58:30 | dom96 | Really good answer by Jehan https://news.ycombinator.com/item?id=9643870 |
09:59:48 | * | Varriount quit (Ping timeout: 265 seconds) |
10:02:57 | * | johnsoft joined #nim |
10:03:54 | sepisoad | hi dom96, can you please go up and take a look at my question? |
10:03:58 | dom96 | sepisoad: just replied |
10:04:05 | dom96 | (on the gist) |
10:04:40 | sepisoad | yes |
10:05:11 | * | OnO joined #nim |
10:06:13 | sepisoad | dom96, thanks |
10:06:28 | sepisoad | though i did not fully got what is your idea |
10:06:36 | dom96 | why do you need threads though? |
10:07:36 | sepisoad | i'm trying to use threads along with my gui app which is written using iup lib |
10:08:10 | sepisoad | since threads might block ui, i prefer spawning a new thread that handles socket operations |
10:08:21 | dom96 | the socket operations are already async though |
10:08:42 | sepisoad | i know, but what if i want to waitFor a future value? |
10:09:04 | dom96 | then you use 'await' |
10:09:05 | sepisoad | i managed to use asyncSocket with iup without blocking the ui |
10:09:42 | dom96 | right, so what's the problem? |
10:09:44 | sepisoad | i mean through a seperate thread |
10:09:49 | dom96 | oh |
10:10:08 | dom96 | IUP has an event loop which you should hook into |
10:11:05 | dom96 | You can call: |
10:11:08 | dom96 | IupLoopStep() |
10:11:15 | dom96 | asyncdispatch.poll() |
10:11:22 | dom96 | in a while true loop |
10:11:28 | dom96 | in the same thread |
10:12:14 | sepisoad | Ok, that's file, Anyways, how can i share a ref object among threads? |
10:13:15 | dom96 | you might be able to send it through a Channel |
10:15:54 | * | filcuc quit (Ping timeout: 272 seconds) |
10:18:39 | * | Trustable joined #nim |
10:18:50 | * | charmander is now known as dtscode |
10:19:04 | * | johnsoft quit (Ping timeout: 272 seconds) |
10:23:02 | * | johnsoft joined #nim |
10:26:13 | * | Varriount joined #nim |
10:28:20 | Varriount | sepisoad: Ping |
10:28:58 | sepisoad | Varriount, still up? |
10:29:07 | Varriount | sepisoad: Couldn't get to sleep. |
10:29:11 | * | Matthias247 joined #nim |
10:29:22 | Varriount | sepisoad: Just an FYI, dom96 commented on your gist page. |
10:29:40 | sepisoad | I saw the answer |
10:29:57 | Varriount | sepisoad: So, a.. workaround to your problem is to turn thread analysis off, via --threadAnalysis:off |
10:30:06 | * | ddl_smurf quit (Quit: ddl_smurf) |
10:30:28 | sepisoad | hmmm! |
10:30:36 | sepisoad | let me check |
10:31:54 | Varriount | sepisoad: It works, or rather, it compiles, and runs with no output. |
10:38:05 | * | johnsoft quit (Ping timeout: 250 seconds) |
10:39:25 | dom96 | turning off thread analysis is likely not a good idea |
10:43:16 | * | johnsoft joined #nim |
10:49:35 | * | jaco60 quit (Ping timeout: 265 seconds) |
10:55:31 | * | mihailp joined #nim |
10:59:15 | * | johnsoft quit (Ping timeout: 265 seconds) |
11:03:43 | * | mihailp left #nim ("Leaving") |
11:05:14 | * | boopisaway is now known as boop |
11:08:31 | * | Ven joined #nim |
11:09:23 | * | johnsoft joined #nim |
11:11:15 | * | filcuc joined #nim |
11:12:04 | Varriount | dom96: Well, I did say it was a workaround, not a fix. |
11:12:10 | * | yglukhov___ quit (Ping timeout: 256 seconds) |
11:12:47 | * | yglukhov___ joined #nim |
11:13:28 | * | matkuki joined #nim |
11:13:29 | Varriount | dom96: Although I know that sepisoad's program could be implemented differently, he nevertheless *should* be allowed to implement it in the current fashion. |
11:14:16 | * | filcuc quit (Client Quit) |
11:15:33 | dom96 | Varriount: no, because thread's utilise a GC per thread. He cannot share data that way. |
11:18:16 | * | johnsoft quit (Ping timeout: 255 seconds) |
11:19:40 | matkuki | What type should be used on the Nim side for a C 'wchar_t' type? |
11:21:36 | def- | matkuki: WideCString looks good |
11:21:48 | matkuki | def-: Thanks! |
11:22:08 | def- | matkuki: and TUtf16Char |
11:29:26 | * | johnsoft joined #nim |
11:31:09 | * | sepisoad_ joined #nim |
11:34:25 | * | sepisoad quit (Ping timeout: 250 seconds) |
11:34:36 | * | vendethiel joined #nim |
11:37:22 | * | johnsoft quit (Ping timeout: 264 seconds) |
11:42:13 | * | Siecje joined #nim |
11:44:42 | * | Ven quit (Read error: No route to host) |
11:48:24 | * | sepisoad_ quit (Ping timeout: 252 seconds) |
11:51:26 | * | Siecje1 joined #nim |
11:52:31 | * | Strikecarl joined #nim |
11:52:39 | Strikecarl | is there like a rand() ? |
11:53:48 | def- | Strikecarl: import math; randomize() echo random(100) |
11:53:56 | def- | randomize(); echo random(100) |
11:54:21 | * | Siecje quit (Ping timeout: 265 seconds) |
11:55:10 | def- | Strikecarl: if you need less-flawed pseudo-random numbers: https://github.com/BlaXpirit/nim-random |
11:55:27 | Strikecarl | meh i just need something that will spit out a number |
11:55:30 | Strikecarl | can i do like |
11:55:36 | * | JinShil joined #nim |
11:55:40 | Strikecarl | what is the int in the random()? |
11:55:51 | def- | http://nim-lang.org/docs/math.html#random,int |
11:56:02 | Strikecarl | aight ty |
11:58:37 | * | vendethiel quit (Ping timeout: 264 seconds) |
12:01:19 | * | Kingsquee quit (Quit: Konversation terminated!) |
12:08:14 | * | vendethiel joined #nim |
12:10:57 | * | Siecje1 quit (Quit: Leaving.) |
12:11:23 | * | Siecje joined #nim |
12:18:53 | * | synthmeat quit (Quit: WeeChat 1.3-dev) |
12:19:16 | * | synthmeat joined #nim |
12:24:14 | * | johnsoft joined #nim |
12:29:03 | * | ozra joined #nim |
12:30:12 | * | vendethiel quit (Ping timeout: 252 seconds) |
12:30:14 | matkuki | def-: Is there a way to cast a string to WideCString? |
12:30:42 | matkuki | Sorry, I meant 'convert' not 'cast'! |
12:32:10 | BlaXpirit | matkuki, that's really tough |
12:32:20 | BlaXpirit | because WideCString is not even a well-defined thing |
12:32:41 | BlaXpirit | could be utf-16, could be anything |
12:37:53 | * | johnsoft quit (Ping timeout: 256 seconds) |
12:40:21 | matkuki | Ok, I need a way to pass arguments passed from a Nim app to an embedded python interpreters 'int Py_Main(int argc, wchar_t **argv)' function. |
12:40:23 | matkuki | If I call it as 'Py_Main*(argc: int, argv: seq[string])', it throws a 'SIGSEGV: Illegal storage access. (Attempt to read from nil?)' error if arguments are passed to the Nim application! |
12:40:24 | matkuki | Without arguments it works though. Any ideas? |
12:42:51 | * | johnsoft joined #nim |
12:43:32 | * | Strikecarl quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
12:44:22 | matkuki | The code: https://bpaste.net/show/9bc51b880dbf |
12:44:24 | * | Ven joined #nim |
12:48:39 | matkuki | Does the string sequence get GC'ed? |
12:54:15 | dom96 | the definition of Py_main doesn't look right to me. |
12:55:35 | fowl | Pass it cmdline and cmdcount |
12:56:20 | fowl | You can't just make wchart** be seq.. Completely different memory layout |
12:57:36 | matkuki | Thanks, but what's the Nim declaration for 'int Py_Main(int argc, wchar_t **argv)' then? |
12:58:16 | * | johnsoft quit (Ping timeout: 258 seconds) |
12:58:19 | pigmej | matkuki: do you integrate python with nim? |
12:58:24 | matkuki | yes |
12:58:30 | matkuki | python 3 |
12:58:35 | pigmej | ouch |
12:59:58 | matkuki | dom96, fowl: Any hints for the Nim 'int Py_Main(int argc, wchar_t **argv)' declaration? |
13:00:37 | dom96 | if anything you should be passing addr sequence[0] there |
13:00:48 | fowl | I'll look when I'm back home, probably (argc:cint, argv:cstringarray): cint |
13:00:57 | dom96 | but I have no idea if string is compatible with wchar_t |
13:01:00 | * | drewsrem joined #nim |
13:02:40 | * | Matthias247 quit (Read error: Connection reset by peer) |
13:02:53 | * | johnsoft joined #nim |
13:02:57 | matkuki | Will try it when I get back. |
13:17:31 | * | johnsoft quit (Ping timeout: 255 seconds) |
13:22:31 | * | pregressive joined #nim |
13:22:57 | * | johnsoft joined #nim |
13:25:20 | * | dbohdan joined #nim |
13:37:21 | * | johnsoft quit (Ping timeout: 240 seconds) |
13:38:57 | * | BlaXpirit_ joined #nim |
13:41:35 | * | BlaXpirit quit (Ping timeout: 258 seconds) |
13:42:58 | * | johnsoft joined #nim |
13:43:58 | * | gyeates joined #nim |
13:55:25 | * | JinShil quit (Quit: Konversation terminated!) |
13:58:12 | * | johnsoft quit (Ping timeout: 272 seconds) |
14:02:59 | * | johnsoft joined #nim |
14:06:12 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
14:14:55 | * | pregressive quit (Remote host closed the connection) |
14:17:04 | * | johnsoft quit (Ping timeout: 244 seconds) |
14:22:52 | * | johnsoft joined #nim |
14:23:32 | Araq | matkuki: no idea why Python uses wchar_t**. wchar_t* is a WideCString which you can create with newWideCString |
14:25:42 | matkuki | Araq: Will try it, thanks. |
14:27:48 | matkuki | Araq: I'm making bindings for Python 3 using your library (nim-lang/python) as a starting point. |
14:27:49 | matkuki | Can I turn to you if I need help or is someone else responsible for that library? |
14:28:16 | Araq | just ask me, I know everything |
14:28:43 | matkuki | Ha, good one. |
14:29:03 | * | banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
14:29:30 | dom96 | He really does. |
14:29:35 | dom96 | Araq is all knowing. |
14:32:08 | Araq | so yeah, a seq[WideCString] does the job when you pass it via addr s[0] |
14:35:08 | * | Arrrr joined #nim |
14:37:10 | * | johnsoft quit (Ping timeout: 258 seconds) |
14:37:18 | matkuki | Araq: Ha, it works. There is no more 'SIGSEGV' error. Maybe you are all knowing... |
14:39:35 | matkuki | Araq: Should the library be split into python2 and python3 or should it be in one python.nim module? |
14:40:30 | Arrrr | "import python2, python3" |
14:40:36 | Araq | I think py3 is close enough API wise that we can lave it as python.nim |
14:40:37 | * | gyeates quit (Ping timeout: 264 seconds) |
14:40:43 | Araq | *leave it as |
14:41:02 | dom96 | I think it should be separate |
14:41:14 | dom96 | It's not the same API, is it? |
14:41:21 | Araq | it is. |
14:41:22 | * | jaco60 joined #nim |
14:41:42 | Araq | also what Arrrr said. "import python2, python3" will not work easily |
14:42:22 | fowl | I don't think the python module even works |
14:42:38 | matkuki | fowl: For the examples, it does. |
14:42:54 | * | johnsoft joined #nim |
14:42:55 | matkuki | At least on Windows. |
14:42:55 | fowl | The data types use inheritance |
14:43:08 | drewsrem | I'm trying to write a macro that generates a getter for a field of a type, I'm imagining that I pass to this macro the expr e.g. "macroCall myobjecttype.id" and the macro can "recognize" id being a field and then splits them, ending up with e.g. a variable that holds "myobjecttype" and one that holds "id" at the end. - Any pointers? |
14:43:44 | matkuki | Araq: Ok, one module it is. |
14:44:25 | fowl | drewsrem: myobjecttype- is it a type or an instance |
14:44:32 | drewsrem | fowl, type |
14:44:50 | fowl | You cannot have a variable of it |
14:45:29 | drewsrem | I guess I just need the ident? - I want the macro to end up producing a proc thats just a getter for the field I passed. |
14:47:12 | drewsrem | For this example: http://nim-lang.org/docs/tut2.html#object-oriented-programming-properties the macro would be called like: "mkGetter Socker.Fhost" |
14:47:21 | drewsrem | Socket* |
14:47:29 | drewsrem | Is this possible at all? |
14:47:49 | fowl | Yea drewsrem with a template even (easier than macros) |
14:48:17 | drewsrem | fowl, what parameter types would I use? - Just an expr? |
14:48:31 | fowl | Template defAccessor (ty, field, name: untyped): stmt = |
14:49:00 | fowl | Proc name* (self: ty): auto = self.field |
14:49:14 | drewsrem | oh, very nice |
14:49:29 | fowl | Then another one for `name=` |
14:50:32 | drewsrem | Would the above be possible with macros tho? - i.e. that you don't have to separately pass the type and field name, but rather just pass "type.field" and the macro recognizes them? |
14:50:54 | fowl | You could yea |
14:51:09 | drewsrem | I see, thanks |
14:52:00 | fowl | untyped{nkDot} can be used to make sure you get a dot expr |
14:52:06 | fowl | Might be nkDotExpr |
14:52:48 | drewsrem | There's nothing about the untyped-keyword in the manual yet? |
14:53:07 | fowl | Araq: instead of butchering that section of code in typeRel I added an if stmt |
14:53:08 | drewsrem | I'll look for examples in the source tho |
14:53:24 | Araq | fowl: yeah the PR is fine |
14:53:37 | fowl | drewsrem: in the manual its probably called expr |
14:53:39 | Araq | but it requires some tests designed to break it |
14:53:54 | drewsrem | fowl, oh they're interchangeable I see |
14:54:27 | fowl | Araq: break it how |
14:55:48 | fowl | Show a conflict where a function could match with string and openarray[t] ? |
14:57:10 | * | johnsoft quit (Ping timeout: 264 seconds) |
15:00:02 | * | gsingh93 joined #nim |
15:00:10 | * | yglukhov___ quit (Ping timeout: 264 seconds) |
15:02:51 | * | johnsoft joined #nim |
15:05:46 | * | pregressive joined #nim |
15:07:47 | * | rgv151 joined #nim |
15:08:23 | dom96 | To everyone who is still not aware of this. Araq's screencast starts in 2 hours: http://www.oreilly.com/pub/e/3420 |
15:08:39 | dom96 | Register if you want to participate. |
15:09:02 | Araq | fowl: yeah, something like that |
15:11:53 | * | amishPa joined #nim |
15:12:10 | * | banister joined #nim |
15:12:16 | * | banister quit (Max SendQ exceeded) |
15:17:32 | * | johnsoft quit (Ping timeout: 256 seconds) |
15:18:37 | * | reactormonk joined #nim |
15:22:14 | ozra | dom96: Ah, thanks for telling, cool. |
15:22:51 | * | johnsoft joined #nim |
15:25:36 | * | ddl_smurf joined #nim |
15:26:06 | * | banister joined #nim |
15:28:14 | fowl | dom96, what participation is there? |
15:29:11 | dom96 | fowl: What do you mean? You can ask Araq questions through their chat. |
15:29:17 | * | ddl_smurf quit (Client Quit) |
15:29:26 | fowl | oh ok |
15:32:27 | fowl | dom96, can i watch it from this link |
15:33:02 | dom96 | fowl: you need to register for it I think |
15:35:33 | * | amishPa left #nim (#nim) |
15:36:15 | BlaXpirit_ | nice registration |
15:36:28 | BlaXpirit_ | had to enter name 2 times, email 3 times |
15:36:56 | fowl | right |
15:37:09 | * | johnsoft quit (Ping timeout: 244 seconds) |
15:37:14 | dom96 | BlaXpirit_: yeah, it's very weird |
15:38:09 | BlaXpirit_ | is it like... only for business-people? |
15:41:17 | fowl | will the event page refresh with the video when it is time? |
15:41:53 | BlaXpirit_ | what "company" should i enter D: |
15:42:08 | fowl | you can put fowlsoft ;) |
15:42:17 | * | TEttinger quit (Read error: Connection reset by peer) |
15:42:22 | fowl | you can be my intern |
15:42:36 | * | TEttinger joined #nim |
15:42:51 | * | johnsoft joined #nim |
15:43:09 | * | TEttinger quit (Read error: Connection reset by peer) |
15:44:40 | dom96 | yeah, it asks odd questions |
15:44:44 | dom96 | I wrote "None?" |
15:44:45 | dom96 | :P |
15:45:35 | * | gyeates joined #nim |
15:45:45 | Arrrr | It is asking me "Are you using underwear?" wtf |
15:49:02 | * | BlaXpirit_ quit (Quit: Quit Konversation) |
15:49:24 | * | BlaXpirit joined #nim |
15:50:31 | * | BlaXpirit is CEO of "-" inc. |
15:52:04 | dom96 | I'm CFO. |
15:52:26 | dom96 | gimme your moneys |
15:53:36 | * | wb quit (Ping timeout: 265 seconds) |
15:53:58 | * | dtscode gives dom96 all the things |
15:54:08 | * | dom96 swims in all the things |
15:54:30 | * | wb joined #nim |
15:56:23 | ozra | BlaXpirit: haha, yeah, worst registration procedure ever! |
15:57:17 | * | johnsoft quit (Ping timeout: 258 seconds) |
15:57:25 | * | elbow joined #nim |
15:57:32 | * | elbow_ joined #nim |
15:57:37 | * | elbow_ quit (Remote host closed the connection) |
16:02:53 | * | johnsoft joined #nim |
16:10:28 | * | coffeepot quit (Ping timeout: 246 seconds) |
16:12:20 | * | mihailp joined #nim |
16:14:17 | * | mihailp left #nim (#nim) |
16:17:49 | * | johnsoft quit (Ping timeout: 264 seconds) |
16:22:52 | * | johnsoft joined #nim |
16:25:26 | OnO | webcast today? will it be live? |
16:27:28 | BlaXpirit | i think so |
16:27:34 | BlaXpirit | 30 min |
16:28:13 | dtscode | :D |
16:31:16 | dom96 | OnO: yep. Register here: http://www.oreilly.com/pub/e/3420 |
16:32:02 | dom96 | How many of you guys are watching it? |
16:32:23 | BlaXpirit | 5 |
16:32:49 | fowl | 0 - hasnt started yet |
16:32:54 | fowl | zing |
16:33:07 | dom96 | * are going to be watching it |
16:33:45 | dtscode | I am registering right now for it |
16:33:58 | dtscode | I almost said I live in the United Stated |
16:34:30 | OnO | yeah, already did last week... hope to see Araq soon :) |
16:36:01 | dtscode | >June 2, 2015: 10am - L.A. | 1pm - NY | 6pm - London |
16:36:01 | dtscode | >O'Reilly Software Engineering Online Conference |
16:36:05 | dtscode | Its this one right? |
16:37:37 | dom96 | I think so |
16:38:35 | dtscode | Oh wait. I guess it is cause it says Araq is speaking underneath that |
16:38:56 | dom96 | You can't go wrong if you follow the link I gave. |
16:39:06 | dtscode | I did. I'm all set now |
16:39:17 | dtscode | Or do you mean in life in general? |
16:39:49 | dom96 | yep |
16:39:59 | dtscode | oh good |
16:45:53 | dom96 | oooh, we can launch it now |
16:46:18 | dtscode | :D I'm already in |
16:47:17 | dom96 | Nice music. |
16:47:27 | rgv151 | yeah, i love it :) |
16:48:47 | dtscode | is oscon for open source stuff? |
16:49:22 | dom96 | yep. Open Source Conference |
16:49:48 | dtscode | Maybe I've been IRC'ing for too long, but the spaces in between each group chat message bugs the hell out of me |
16:50:04 | dom96 | yeah... |
16:50:12 | dom96 | It's not the best chat in the world. |
16:50:12 | fowl | this looks like amberjs |
16:50:22 | dtscode | D: Its in Oregon? Yeah there's no way I'm going |
16:50:33 | BlaXpirit | what chat |
16:50:44 | dtscode | BlaXpirit: There are some apps at the bottom |
16:50:44 | OnO | nice tune, bit progressive |
16:51:02 | BlaXpirit | is this year 2002 |
16:51:26 | dom96 | dtscode: try getting there when you live in Europe :( |
16:51:36 | dom96 | also the tickets to OSCON cost waaayyy too much |
16:51:41 | ozra | Hmm. I don't get this O'Reilly page.. it shows me that "register now", though I've goe through the process of typing my credentials fiftyeleven times... Will it redirect to the screencast, eh, anyone knows? |
16:51:58 | dom96 | ozra: You should get an email IIRC |
16:52:01 | dtscode | ozra: Did you see the email? |
16:52:18 | dtscode | dom96: I know the feels. c++con is super expensive |
16:52:22 | ozra | Yeah. All clicked and dandy an hour ago... |
16:52:27 | * | matkuki quit (Quit: ChatZilla 0.9.91.1 [Firefox 38.0.1/20150513174244]) |
16:52:36 | dom96 | dtscode: Can't wait to host NimCon and charge people thousands of dollars for tickets :P |
16:52:49 | dtscode | exactly |
16:52:56 | dtscode | And we can just have like 2 booths |
16:53:08 | dom96 | It'll just be me ranting about my life. |
16:53:12 | dom96 | for 2 days |
16:53:21 | dom96 | ozra: you mean it worked an hour ago? |
16:53:34 | dtscode | oh god. I can see the stories about tea now |
16:53:43 | fowl | ozra, use the link in your email |
16:53:57 | ozra | ah. no, I regged an hours ago :-/ |
16:54:03 | ozra | I'll check again, thanks |
16:55:03 | dom96 | hrm, Araq's slides look a bit low-quality. |
16:56:18 | OnO | yeah... NimCon 2020, 10k tickets sold within 10 minutes :) |
16:56:31 | ozra | No go. I'll re register :-/ |
16:56:49 | OnO | OS X 11, now written in Nim, replacing Swift and ObjC :> |
16:57:07 | * | johnsoft quit (Ping timeout: 255 seconds) |
16:57:19 | dtscode | Linux2: Now written in nim, so it works |
16:57:29 | * | filwit joined #nim |
16:58:06 | dtscode | fowl: is your name really fowlington? |
16:58:07 | dom96 | filwit: http://www.oreilly.com/pub/e/3420 |
16:58:09 | Arrrr | 2020: nim v3 now with interfaces |
16:58:27 | filwit | dom96: if that's the presentation link i'm already there bro :) |
16:58:37 | reactormonk | Arrrr, we already have concepts ^^ |
16:58:47 | dom96 | filwit: cool |
16:58:48 | ozra | *finally* :) |
16:58:48 | dtscode | Oh... btw. We should never release nim 1.0. Just keep getting closer and closer to 1 without actually hitting it |
16:58:49 | fowl | dtscode, nah |
16:59:00 | dtscode | D: |
16:59:06 | dtscode | You lied on the internet? |
16:59:11 | fowl | realname is Fakename Isfake |
16:59:33 | dtscode | souds legit |
16:59:44 | reactormonk | dom96, gotta get him to let you review the slides beforehand ;-) |
17:00:06 | dom96 | reactormonk: O'Reilly messed it up I think. |
17:00:22 | dom96 | reactormonk: His slides looked fine to me. The PDF they generated seems to have resized them weirdly. |
17:00:26 | ozra | suuuch funky music, I'm blown away! |
17:00:30 | reactormonk | dom96, fuck |
17:00:36 | OnO | yeah, let's do asymptotic versioning |
17:00:38 | reactormonk | dom96, got a stream url? |
17:00:48 | OnO | 0.9, 0.9.9, 0.9.9.9.... |
17:00:54 | dom96 | reactormonk: you need to register http://www.oreilly.com/pub/e/3420 |
17:00:54 | dtscode | exactly |
17:00:59 | dtscode | 0.9999999 |
17:01:02 | reactormonk | dom96, :-/ |
17:01:02 | OnO | some Smurfette is talking |
17:01:18 | dom96 | reactormonk: it doesn't take long if you hurry! |
17:01:19 | drewsrem | Pretty awful web GUI |
17:01:21 | dom96 | they're starting now |
17:01:22 | fowl | is there video |
17:01:28 | dom96 | fowl: nope |
17:01:40 | dom96 | So many people from the US |
17:01:47 | * | yglukhov___ joined #nim |
17:01:48 | dtscode | we are master race |
17:01:50 | rgv151 | so there is not video? |
17:01:54 | rgv151 | no* |
17:01:59 | dtscode | correct |
17:02:05 | dom96 | just slides |
17:02:09 | Arrrr | will someone upload it to youtube? Seems like i cant use yopmail for registration |
17:02:12 | dom96 | in the "Slide area" |
17:02:23 | drewsrem | Audio quality is pretty bad? |
17:02:26 | rgv151 | i c |
17:02:33 | filwit | audio quality is good for me |
17:02:38 | dtscode | Arrrr: Its recorded, so it will probably already be there |
17:02:39 | * | gsingh93 quit (Ping timeout: 252 seconds) |
17:02:41 | reactormonk | dom96, ah fuck registration email... |
17:02:42 | filwit | no video yet for me though |
17:02:55 | * | johnsoft joined #nim |
17:02:57 | dtscode | no video filwit |
17:03:10 | dom96 | dat hesitation |
17:03:13 | reactormonk | dom96, Error #2046 -.- |
17:03:24 | filwit | yeah i figured it just hasn't started yet.. but wasn't quite sure |
17:03:32 | filwit | oh no i understand |
17:03:34 | filwit | it's a radio show |
17:03:55 | filwit | slideshow |
17:03:56 | filwit | something |
17:04:01 | drewsrem | awkward |
17:04:04 | filwit | lol |
17:04:08 | * | toadytoadtoad joined #nim |
17:04:13 | toadytoadtoad | Hi all! |
17:04:19 | toadytoadtoad | Tuning in to the nim webcast... |
17:04:43 | dom96 | omg, the woman really messed up |
17:04:48 | rgv151 | lol |
17:04:53 | dom96 | was she not supposed to go over those slides? |
17:05:03 | drewsrem | Looks like |
17:05:05 | filwit | toadytoadtoad: hello, we're all there too |
17:05:17 | toadytoadtoad | :D |
17:05:18 | reactormonk | Urgh, the audio quality... I guess I'm watching too many twitch streams |
17:05:27 | dom96 | the audio quality is a bit worse now... |
17:05:30 | drewsrem | reactormonk, audio quality is also awful on my end, no twitch here |
17:05:32 | BlaXpirit | no, it's the microphone |
17:05:43 | reactormonk | drewsrem, nah, twitch usually has good quality |
17:05:48 | ozra | Yeah, same here. |
17:05:51 | reactormonk | I guess I'm just spoiled :-) |
17:05:56 | dom96 | BlaXpirit: no, it's not. He sounded perfect on Skype. |
17:05:59 | BlaXpirit | hm |
17:06:06 | BlaXpirit | i saw the main developer of Crystal join |
17:06:21 | dom96 | oh well, I can still understand him |
17:06:27 | dbohdan | Anyone here tried to write a binary extension for a GC-ed scripting language in Nim? I wonder how Nim's GC would interact with that of the scripting language. |
17:06:50 | dbohdan | The language I am specifically interested in is Tcl. |
17:06:53 | Arrrr | BlaXpirit: tell him to join this channel |
17:07:09 | reactormonk | dbohdan, there's nim-borg for python... but otherwise it's mostly the same for a C api |
17:07:17 | dtscode | are we allowed to answer the Q's if we can? |
17:07:28 | reactormonk | dtscode, just do it |
17:07:36 | ozra | dtscode: can't see why not! |
17:07:44 | toadytoadtoad | Help us out, dtscode ! |
17:07:48 | dom96 | dtscode: I sure as hell am going to :P |
17:08:20 | dtscode | Fuck everyone beat me to it |
17:08:26 | toadytoadtoad | Why are these languages essential? |
17:08:30 | reactormonk | I can't really write because I put up a random name - automatic reaction to mandatory registration |
17:08:32 | toadytoadtoad | I asked that a while ago |
17:08:33 | * | darkf quit (Quit: Leaving) |
17:08:41 | ozra | my group chat ain't workin.. grrggl |
17:09:14 | dtscode | toadytoadtoad: They cover a wide range of computer fields |
17:09:25 | toadytoadtoad | Ok |
17:10:02 | dbohdan | And a related question: does gc:none mean you can't use the standard library? |
17:10:24 | reactormonk | dbohdan, sure you can, but you'll leak memory |
17:10:25 | dtscode | dbohdan: Not that I know of |
17:10:38 | dtscode | That is some nice nim code |
17:11:55 | reactormonk | How do you do usability testing? |
17:12:29 | * | vendethiel joined #nim |
17:13:04 | dom96 | reactormonk: I guess spend money to hire people to test the language. |
17:13:24 | reactormonk | dom96, lulz. Oh well. |
17:13:45 | dtscode | Man this Dominik Picheta noob. I bet hes never even used nim |
17:14:31 | dom96 | ;) |
17:16:06 | dtscode | is it going slow for everyone else? |
17:16:23 | drewsrem | "but that's not very interesting" :) |
17:16:37 | dbohdan | reactormonk: Hm, not sure just leaking memory is better. :-) It would to probably be nontrivial to make Nim use a third-party GC, right? |
17:16:53 | dbohdan | s/to probably/probably/ |
17:17:03 | reactormonk | dbohdan, +/-, we just had a PR which implements the go gc |
17:17:21 | reactormonk | dbohdan, https://github.com/Araq/Nim/pull/2851 |
17:17:37 | * | johnsoft quit (Ping timeout: 250 seconds) |
17:18:22 | Arrrr | how is go gc lincensed? |
17:19:06 | reactormonk | BSD 3-clause |
17:20:26 | dbohdan | So you need a cycle detector... Tcl's GC doesn't do that (because everything's immutable). |
17:21:18 | reactormonk | dbohdan, I mean you can just go with the C api and do the tcl memory management kinda manually. |
17:22:04 | * | brson joined #nim |
17:22:23 | toadytoadtoad | dtscode: Confesssion time... I've never coded in nim |
17:22:29 | dtscode | I know :D |
17:22:33 | toadytoadtoad | XD |
17:22:41 | toadytoadtoad | I just like how it looks and seems |
17:22:49 | dtscode | Ali Shakiba: Q: Why "for i in x ...." is highly discouraged? |
17:22:54 | * | johnsoft joined #nim |
17:22:56 | dtscode | Did araq just say that? |
17:23:09 | toadytoadtoad | Yes |
17:23:19 | dtscode | odd |
17:23:36 | reactormonk | dbohdan, how about guile? |
17:23:41 | dom96 | no, he said that unsigned ints are discouraged. |
17:23:48 | dtscode | ah |
17:23:59 | dtscode | I already knew that though |
17:24:09 | dbohdan | reactormonk: But you would still have two GCs running: Nim's and Tcl's. Maybe it isn't that bad but it seems like a code smell to me. |
17:24:12 | * | synthmeat quit (Quit: WeeChat 1.3-dev) |
17:24:52 | reactormonk | dbohdan, maybe, but if it works |
17:25:17 | toadytoadtoad | dtscode: You're a nim aficionado. Why are you listening? |
17:25:37 | BlaXpirit | many of us there |
17:25:40 | dtscode | I barely know nim :D. I've messed with about 20% of the language |
17:25:44 | toadytoadtoad | I bet a bunch of people here are aficionados, just focusing on dts here |
17:25:44 | BlaXpirit | personally i dont know |
17:25:52 | BlaXpirit | why |
17:26:02 | dtscode | I invited him here |
17:26:17 | dtscode | I should learn more nim and work on the compiler/stdlib |
17:26:23 | dbohdan | reactormonk: What do you mean with Guile? I want to find a language other than C in which to write Tcl extensions. |
17:26:24 | * | synthmeat joined #nim |
17:26:52 | toadytoadtoad | dtscode: btw, thanks again for showing me this |
17:26:56 | dtscode | np : |
17:26:57 | dtscode | :D |
17:27:10 | toadytoadtoad | I'm happy nim is first... I don't have time for the other 2 lecture s;-; |
17:27:10 | dom96 | toadytoadtoad: I'm there to answer questions |
17:27:15 | toadytoadtoad | Cool |
17:27:21 | reactormonk | toadytoadtoad, basically listening so maybe I learn more stuff ;-) |
17:27:27 | dtscode | ^ |
17:27:36 | toadytoadtoad | Fair enough |
17:27:47 | dom96 | wish we could see how many people there are |
17:27:48 | toadytoadtoad | dts: what was the domain name you had once? |
17:27:54 | reactormonk | dbohdan, hm. How can you mark something in a tcl extension to be GC'd? |
17:28:12 | dtscode | dom96: :c They need to use IRC protocol |
17:28:29 | dtscode | toadytoadtoad: I've had many. do you mean dragontoothsoftware.com? |
17:28:33 | toadytoadtoad | No |
17:28:38 | toadytoadtoad | the dtsisawesomeand |
17:28:39 | dom96 | they need to use something which does not depend on Java and Adobe Flash |
17:28:47 | toadytoadtoad | The really long one involving nim |
17:28:57 | * | xificurC quit (Read error: Connection reset by peer) |
17:28:58 | BlaXpirit | i dont see java |
17:28:59 | dbohdan | reactormonk: Tcl_DecrRefCount(). When it reaches 0 the value is collected. |
17:29:12 | BlaXpirit | and html is not viable |
17:29:22 | dtscode | dom96: whats that link that compares nim to rust? |
17:29:32 | dbohdan | reactormonk: ("It" being the reference count.) |
17:29:46 | reactormonk | dbohdan, you could manually garbage collect the items interacting with tcl and let the nim gc handle the rest |
17:30:19 | reactormonk | "manually" as in when the refcount is zero |
17:30:49 | toadytoadtoad | dom96: You wrote nim kernel?! |
17:31:18 | dom96 | yep |
17:31:23 | dtscode | dom96 is a fucking genius |
17:31:30 | dom96 | http://arthurtw.github.io/2015/01/12/quick-comparison-nim-vs-rust.html |
17:31:34 | dom96 | dtscode: hah barely |
17:31:36 | Arrrr | Man, he wrote like half of the compiler |
17:31:43 | filwit | dom96: he meant 'methods' as 'dynamic dispatch based on inheritance' not UFCS (i think) |
17:31:56 | dtscode | dom96: You can say that after writing all the cool parts of the stdlib |
17:32:07 | toadytoadtoad | dom96: Thats really impressive |
17:32:10 | dom96 | filwit: I think he meant the ability to define functions on objects. |
17:32:13 | BlaXpirit | dom96 is a legend |
17:32:33 | dtscode | Hes also written the irc lib that ruined irc for me in other languages |
17:32:46 | dom96 | That's very kind of you guys to say. Thanks :) |
17:32:52 | dbohdan | reactormonk: That seems reasonable. It's how C++ code generally interacts with Tcl as well. |
17:33:17 | dbohdan | reactormonk: Thanks for the answers! I've gotta go. |
17:33:19 | toadytoadtoad | dom96: I might take a look at your kernel... I might include nim in my OS now |
17:33:22 | BlaXpirit | i only tried to bring up an old joke, but it's true |
17:33:45 | toadytoadtoad | Does nim have easy audio processing? (easy compared to c) |
17:33:57 | dtscode | Sure |
17:34:00 | BlaXpirit | languages don't "have" audio processing |
17:34:03 | dtscode | it has some audo wrappers |
17:34:04 | BlaXpirit | it's all about libraries |
17:34:04 | * | toadytoadtoad quit (Remote host closed the connection) |
17:34:10 | dom96 | toadytoadtoad: it's not really that impressive, it's just OSDev's barebones example ported to C with some additional functionality (like the rainbow function :)) |
17:34:11 | BlaXpirit | and libraries are very easy to wrap |
17:34:19 | Arrrr | he didnt like to read that |
17:34:27 | dom96 | *ported to Nim from C |
17:34:30 | dtscode | Nah hes in school right now |
17:34:46 | * | TOADYTOAD joined #nim |
17:34:46 | TOADYTOAD | Clicked the back button accidentally |
17:34:48 | TOADYTOAD | Clicked the back button accidentally |
17:34:52 | TOADYTOAD | Sorry |
17:35:00 | Arrrr | i cannot forgive you |
17:35:00 | dtscode | <dom96> toadytoadtoad: it's not really that impressive, it's just OSDev's barebones example ported to C with some additional functionality (like the rainbow function :)) |
17:35:10 | TOADYTOAD | Thanks dts |
17:35:17 | TOADYTOAD | dom96: Error handling? |
17:35:26 | * | vendethiel quit (Ping timeout: 272 seconds) |
17:35:35 | dom96 | oh yeah, that too. But that's mostly handled by Nim :) |
17:35:41 | TOADYTOAD | And audio wrappers, name of one so I can google it? |
17:35:58 | TOADYTOAD | dom96: Idk how to even get nim running on itself so.... |
17:36:28 | dtscode | TOADYTOAD: On the website there is a list of things supported by nim |
17:36:40 | ozra | TOADYTOAD: audio processing + GC tend to not play nicely. So you'd have to avoid GC... |
17:36:42 | * | dbohdan left #nim (#nim) |
17:36:45 | TOADYTOAD | Ok |
17:36:46 | TOADYTOAD | Thanks |
17:37:00 | Arrrr | ozra, why? |
17:37:05 | ozra | Give nreal time processing ofc. |
17:37:21 | dtscode | jeezus I need my dtscode.io rdns back |
17:37:30 | * | johnsoft quit (Ping timeout: 256 seconds) |
17:37:36 | dtscode | Oh yay! hes gotten to DSL's |
17:37:43 | filwit | ozra: just use the realtime GC faculties to control when and for how long the GC runs |
17:37:50 | TOADYTOAD | dts Speaking of which, again, what was that nim domain you had? |
17:38:04 | dtscode | I would have to check cloudflare :D |
17:38:12 | dtscode | I'll do it after the webthingy |
17:38:13 | dom96 | I hope they got Araq to record himself locally |
17:38:30 | ozra | filwit: For audio, even soft realtime is "not realtime enough" unfortunately (coded a lot audi DPSing along time ago, for Cubase, VST) |
17:38:39 | filwit | ahh, i see |
17:38:40 | dom96 | ozra: Nim's GC is soft real-time ;) |
17:38:50 | TOADYTOAD | My OS is audio based so... |
17:39:17 | ozra | Audio based OS? TOADYTOAD ? |
17:39:24 | TOADYTOAD | I'm building an OS |
17:39:33 | TOADYTOAD | I plan on making an audio only interface |
17:39:37 | Arrrr | Does nim has something like c's static vars in procs? |
17:39:48 | TOADYTOAD | Right now I'm working on mem management |
17:39:49 | reactormonk | Arrrr, what does static mean? |
17:40:12 | TOADYTOAD | dom96: How much nim work have you done?! Incredible... |
17:40:21 | Arrrr | like global, but with the same scope as the proc |
17:40:23 | dom96 | TOADYTOAD: A lot! |
17:40:29 | ozra | TOADYTOAD: Why not make an audio interface to an existing OS (just curious) (I wrote about audio interfaces in a white paper 15 years ago, interests me :_) |
17:40:36 | dtscode | ehh hes written like 2 small things and thats about it |
17:41:10 | Arrrr | http://stackoverflow.com/questions/572547/what-does-static-mean-in-a-c-program |
17:41:16 | * | skyfex joined #nim |
17:41:17 | TOADYTOAD | orza It's running on MIPS, at first I was just building an OS with no goal, and I want kernel control |
17:41:27 | TOADYTOAD | I would hack linux but I didn't know where to start |
17:41:45 | TOADYTOAD | The files dont say: boot here, then this, this does that... too advanced for me :p |
17:42:00 | TOADYTOAD | I'm not even watching the webcast anymore.... |
17:42:07 | ozra | TOADYTOAD: In the end going with hacking linux will probably be more productive, but then again, making your own kernel is cooler B-) |
17:42:30 | TOADYTOAD | Yep |
17:42:38 | * | rgv151 quit (Quit: Leaving...) |
17:42:40 | TOADYTOAD | My OS is open source |
17:42:58 | dtscode | wait we have a builtin html dsl? |
17:42:59 | TOADYTOAD | Feel free to check it out: https://github.com/toad1359/InteractOS |
17:43:01 | dtscode | since when? |
17:43:04 | * | johnsoft joined #nim |
17:43:22 | ozra | Well, if you're not processing audio real realtime (like in few ms latency i/o) soft GC would be fine... |
17:43:30 | TOADYTOAD | Ok |
17:43:53 | TOADYTOAD | NUUUU ALMOST DONE ;-; |
17:44:49 | ozra | TOADYTOAD: You should deffo go with nim :-) |
17:45:09 | dtscode | I'll be writing pokernel in nim :D |
17:45:17 | dtscode | *once it becomes more stable that is* |
17:45:19 | TOADYTOAD | Nice |
17:45:25 | TOADYTOAD | Whats pokernal? |
17:45:32 | TOADYTOAD | *pokernel |
17:45:55 | dtscode | a secret :D |
17:46:05 | ozra | TOADYTOAD: (sidenote: if you made audio UI integration with linux you would help a shitload of blind people in the world...) [plus, I could use it for wearable use and code while walking ;-] |
17:46:08 | TOADYTOAD | Not for long... mwahahaha |
17:46:35 | TOADYTOAD | orza Yeah.. blind people are one of my target crowds |
17:46:53 | TOADYTOAD | orza: That would be cool, but it wouldn't format it properly |
17:47:12 | TOADYTOAD | Anyways, again, my OS is open source |
17:47:13 | dtscode | Does anyone know the answer to Jay's question? I'm curious as well |
17:48:02 | ozra | TOADYTOAD: Yeah, just meant, no offence, probably no one will use it, and it will be production ready in x years? Just thinking out loud here, not trying to discourage you.. |
17:48:05 | reactormonk | dtscode, can you copy/paste it here? |
17:48:18 | dtscode | Jay Dinsbach: Q What are NIM's real time features for embeddedd systems, if there are any? |
17:48:26 | TOADYTOAD | I get it |
17:48:30 | TOADYTOAD | Constructive criticism |
17:48:44 | * | vendethiel joined #nim |
17:48:51 | reactormonk | dtscode, tried it, didn't work out too well because a lot of system stuff requires a heap |
17:49:15 | TOADYTOAD | orza I plan on having a beta in 1 year, maybe less thanks to summer, if I stick to it... Dang no nim on mips |
17:49:56 | ozra | Yeah, like in "I like the sound of that - I'd like to actually use it, and that road choice elliminates that, unless application X, Y, Z are ported, lets poke..." ;-) |
17:50:31 | Arrrr | ozra: what are you working on in your own branch? |
17:50:34 | TOADYTOAD | orza Also, I plan on making custom hardware.... |
17:50:35 | dtscode | reactormonk: shame |
17:50:56 | reactormonk | dtscode, so it's not a problem with having no GC, rather the arduino had so little memory |
17:51:12 | dtscode | yeah that makes sense |
17:51:25 | ozra | Arrrr: Of Nim? Right now I'm trying to debug and fix the test-util. The tests gave different results in different runs(!) OR what do you mean? |
17:51:49 | TOADYTOAD | So dtscode You checking that domain now or l8r? |
17:51:51 | ozra | TOADYTOAD: Cool. |
17:52:10 | TOADYTOAD | Thanks |
17:53:03 | dtscode | uh later. I want to listen to the talk for now |
17:53:17 | TOADYTOAD | Ok |
17:53:29 | TOADYTOAD | I'm leaving soon, thats why Im curious |
17:53:45 | Arrrr | Yes, just wanted to see if you were adding new stuff |
17:54:50 | ozra | Arrrr: Ah, like my 'pipe of' suggestion? ;-) That one was easy to highlight away (unlike dash-identifiers), so I won't bring it up again ;) |
17:55:16 | Arrrr | heh |
17:55:38 | ozra | Arrrr: Are you working on something epically cool? :) |
17:56:17 | * | jibal joined #nim |
17:56:31 | TOADYTOAD | My question :D |
17:56:36 | dtscode | I like how shes asking questions we already answered :D |
17:56:52 | Arrrr | No, i'd like to. Do you know crenshaw's lets build a compiler? |
17:57:06 | Arrrr | i'm following it, but making changes to use nim |
17:57:27 | dtscode | I should port the crenshaw tutorial to nim |
17:57:28 | BlaXpirit | dtscode, the questions were pretty bad |
17:57:37 | dtscode | BlaXpirit: yeah :D |
17:57:43 | TOADYTOAD | Arrrr: I printed that out for $50 |
17:57:45 | TOADYTOAD | <3 |
17:57:57 | Arrrr | i read it only for free |
17:58:05 | TOADYTOAD | I wanted a hard copy |
17:58:10 | ozra | Arrrr: No, haven't heard of. |
17:58:23 | Arrrr | Ah, ok. Well, it is very easy to translate it to Nim TOADYTOAD |
17:58:26 | TOADYTOAD | Arrrr link? |
17:58:36 | Arrrr | ozra http://compilers.iecc.com/crenshaw/ |
17:58:42 | TOADYTOAD | (to the translated version.... is it on github?) |
17:58:51 | * | dddddd quit (Ping timeout: 265 seconds) |
17:59:30 | * | johnsoft quit (Ping timeout: 272 seconds) |
17:59:37 | ozra | Ok. Well, I think I can pass on that one :) Learned by doing. Not that I'm an expert in any way... |
17:59:37 | Arrrr | No, im not using github. I can upload what i have to pastebin if you want, TOADYTOAD |
17:59:55 | TOADYTOAD | I would like that |
18:00:05 | ozra | Arrrr: Why aren't you using github, if I may ask? |
18:00:57 | Arrrr | TOADYTOAD: http://pastebin.com/9inn9KC3 this is what i have up to part 3, part 4-5 is a rewrite |
18:01:16 | Arrrr | Well, i have nothing to share with the world. When i have something, ill create an account (i suppose) |
18:01:23 | TOADYTOAD | Thanks |
18:01:27 | Arrrr | Im not a genious like half of the programmers here |
18:01:48 | TOADYTOAD | I'm in the stupid half |
18:02:05 | TOADYTOAD | Stupid together, Arrrr? But if you're porting a pascal program to nim, you are smart |
18:02:13 | TOADYTOAD | Have fun in that half! |
18:02:37 | ozra | Arrrr: It's good to have an account for issue-reporting etc. anyways. I've had one for years without sharing anything (been in the corporate sphere) :) |
18:03:07 | * | johnsoft joined #nim |
18:03:09 | * | TOADYTOAD quit (Remote host closed the connection) |
18:03:30 | * | askatasuna joined #nim |
18:03:30 | * | InteractOSDev joined #nim |
18:03:35 | InteractOSDev | I'm toad |
18:03:36 | Arrrr | You are right, last time i have to report something on the forum. It was reported to github thanks to yglukhov___ |
18:03:43 | InteractOSDev | Wrong button.... again |
18:03:43 | * | InteractOSDev quit (Changing host) |
18:03:43 | * | InteractOSDev joined #nim |
18:04:27 | ozra | Arrrr: Just get an account already B-) |
18:08:37 | * | InteractOSDev quit (Quit: See my work at lukethetechman.wordpress.com) |
18:10:01 | * | gokr_ joined #nim |
18:11:30 | * | vendethiel quit (Ping timeout: 256 seconds) |
18:12:48 | * | gyeates quit (Ping timeout: 265 seconds) |
18:17:52 | * | johnsoft quit (Ping timeout: 272 seconds) |
18:23:00 | * | johnsoft joined #nim |
18:24:01 | * | johnsoft quit (Read error: Connection reset by peer) |
18:26:06 | * | avsej quit (Remote host closed the connection) |
18:34:46 | * | gyeates joined #nim |
18:35:49 | * | datanoise joined #nim |
18:35:57 | * | Demon_Fox joined #nim |
18:38:56 | * | gokr_ quit (Quit: IRC for Sailfish 0.9) |
18:48:09 | * | avsej joined #nim |
18:48:27 | * | johnsoft joined #nim |
18:48:44 | * | avsej is now known as Guest52278 |
18:48:45 | * | gsingh93 joined #nim |
19:01:54 | * | jubalh joined #nim |
19:02:00 | * | matkuki joined #nim |
19:04:27 | matkuki | How did Araq's talk go? |
19:05:05 | Araq | I hope/think people liked it. feedback was quite positive. |
19:05:33 | matkuki | Great |
19:06:45 | * | vendethiel joined #nim |
19:11:05 | dtscode | I liked it |
19:11:20 | OnO | yup, I think Nim will get more & more attention upcoming months |
19:11:21 | dtscode | Although audio was a bit fuzzy |
19:11:55 | dom96 | I wonder if creating some live screencasts independently on YouTube would be useful. |
19:11:59 | dtscode | Araq: Dom and I decide that we will host a nim conference and charge people $10k a ticket. |
19:12:19 | dom96 | dtscode: Lets invite Bill Gates and charge him $50 million |
19:12:22 | dtscode | ^ |
19:12:36 | filwit | Araq: talk was great, nice job. |
19:12:46 | ozra | Yes, the audio was muddy unfortunately, but the presentation was great. |
19:13:08 | OnO | you will be talking differently, once Nim is bought by Apple ;) |
19:13:18 | dtscode | Back to that independent screencast thing... what about an AMA as well? like collection questions from reddit + hacker news (yuck) + the forums? |
19:13:25 | filwit | Araq: people seemed impressed with the code-coverage example (though, I change the title from 'Macros' to 'Code Coverage' before releasing the slides) |
19:13:32 | dtscode | errr an AMAAN |
19:14:07 | filwit | I would** change... |
19:15:47 | filwit | AMAs and Screencasts surely take a lot of time, and everyone's going to want Araq to do it, lol.. |
19:16:09 | Arrrr | macros deserve its own screencast |
19:16:39 | filwit | screencast(s) |
19:18:47 | matkuki | Next problem with python: https://bpaste.net/show/edf861ec901f |
19:18:48 | dom96 | I'm not good enough? :( |
19:18:49 | matkuki | The 'open' proc creates the file pointer correctly, the 'PyRun_AnyFile' fails. Checked system.nim and 'File = ptr CFile'. What am I missing? |
19:19:45 | dtscode | dom96: eh you barely write any nim code |
19:20:23 | matkuki | Araq: A little help, please? |
19:20:31 | * | dbohdan joined #nim |
19:20:40 | Araq | matkuki: are you on windows? |
19:20:44 | matkuki | yes |
19:21:08 | Araq | then File is C's FILE*, but it uses mingw's FILE* |
19:21:19 | Araq | and Python is usually compiled with visual c++ |
19:21:26 | Araq | so these structures are not compatible |
19:21:32 | filwit | dom96: i'm just saying, realistically everyone's gonna want to hear from the "main man" type of thing.. don't get me wrong, this *has* to change pretty soon (I doubt Araq even has time to do THESE presentations), and you're the next obvious candidate for presentation (we could really use some other community members too.. Jehan's input would surely be invaluable) |
19:21:37 | Araq | you can try to use --cc:vcc to solve this problem |
19:21:52 | matkuki | Araq: will do |
19:22:13 | Arrrr | in fact, i dont know why you dont write more often in your blog dom96 . |
19:22:18 | Araq | matkuki: but even that might not solve it |
19:22:22 | vikaton | How did the Oreilly thing go @ Araq? |
19:23:20 | Araq | matkuki: you should really pass the python code as a string to python, not via FILE* |
19:23:22 | dom96 | Arrrr: No time. Also I want to redesign it, and redesign the tool which generates it. |
19:23:49 | Araq | vikaton: read the logs please. I think people liked it. |
19:24:00 | Araq | bbl |
19:24:35 | matkuki | Araq: So I should skip the PyRun_AnyFileXXX... and PyRun_SimpleFileXXX... functions? |
19:25:02 | matkuki | Yeah, you're probably right. Seems more portable. |
19:25:13 | * | Guest52278 quit (Remote host closed the connection) |
19:26:07 | * | avsej joined #nim |
19:26:31 | * | avsej is now known as Guest2367 |
19:27:09 | * | InteractOSDev joined #nim |
19:29:39 | * | vendethiel quit (Ping timeout: 258 seconds) |
19:30:41 | ozra | Varriount: around? |
19:32:30 | * | vikaton quit () |
19:32:58 | dtscode | How do you turn a string to an int again? |
19:33:13 | def- | dtscode: strutils.parseInt |
19:33:25 | dtscode | ty |
19:35:28 | * | vikaton joined #nim |
19:36:06 | * | UberLambda joined #nim |
19:36:55 | UberLambda | Is there a way to import a module "a" inside of a module "b" and let "b" expose some of "a" 's templates? |
19:37:16 | UberLambda | I'm trying to wrap "logging" into another module that sets it up a bit |
19:37:24 | filwit | yes, use 'export' |
19:37:29 | UberLambda | filwit: thanks |
19:38:16 | vikaton | that Pharohbot guy did a good job debunking some myths in Nim https://news.ycombinator.com/item?id=9640384 |
19:40:02 | UberLambda | meanwhile there's me trying to guess what deferred reference counting is :P |
19:40:26 | UberLambda | but hey, I think I'll replace most of my C code with Nim soon |
19:41:50 | Arrrr | nim, the superset of go |
19:42:02 | Arrrr | change the topic |
19:42:42 | * | fizzbooze joined #nim |
19:42:46 | vikaton | I lol'd at that |
19:43:49 | UberLambda | Is code at module-level executed only once, even if the module is imported multiple times? It seems like so, but I'd like to be sure |
19:45:29 | dom96 | pretty sure it is, yeah. |
19:46:21 | UberLambda | dom96: cool, thanks |
19:47:00 | UberLambda | This language is pretty awesome... fast compilation, fast execution, flexibility + LISP-like macros :3 |
19:47:13 | dom96 | yep :) |
19:48:08 | * | InteractOSDev is now known as toadest |
19:49:15 | ozra | dom96: I had some descrepancies with the testament/tester, which of course is a no no. So I'm investigating it a bit. I think the problem is that it does not use the local-dir compiler nor the local-dir libs, which ultimately is what one wants to test. My idea is to check the args, and if --lib is not passed etc. it defaults to the current dev dir. Any thoughts? |
19:49:52 | dom96 | ozra: I think it likely might just call the Nim in your PATH |
19:50:02 | dtscode | dom96: :c |
19:50:10 | dtscode | You should write me a function or 2 |
19:50:14 | ozra | dom96: Exactly - which is 'way wrong' for it spurpose.. |
19:50:34 | dom96 | ozra: True. |
19:51:08 | * | Arrrr quit (Quit: WeeChat 1.2) |
19:51:42 | ozra | dom96: I'll familiarize myself with the source a bit more, before applying changes, since the 'obvious' place I've found might have alternatives ;) |
19:52:46 | toadest | I'll put some nim in my kernel l8r..... thanks Dom96 for reference |
19:54:01 | dom96 | toadest: cool |
19:54:32 | gokr | It sure is fun seeing this constant flow of new nicks in this channel |
19:57:42 | toadest | I've been here today only so I wouldn't know |
20:00:35 | * | gsingh93 quit (Ping timeout: 265 seconds) |
20:03:08 | * | fizzbooze quit (Ping timeout: 256 seconds) |
20:05:08 | pigmej | reactormonk: hey, I have some time now, and I'm going to try to assemble epc + suggest |
20:05:32 | reactormonk | pigmej, let's see if it crashes and burns |
20:06:36 | pigmej | For now I just hope it will do something ;P |
20:07:23 | OnO | Araq: as discussed I made TR extension, I hope you like it https://github.com/Araq/Nim/pull/2859 |
20:07:58 | pigmej | and I need to setup another emacs instance... blah |
20:10:49 | * | vendethiel joined #nim |
20:13:35 | fowl | OnO: cool! |
20:17:13 | * | dalarmmst quit (Ping timeout: 264 seconds) |
20:19:27 | * | intra quit (Quit: Do the impossible, see the invisible. Row! Row! Wear some flowers!) |
20:22:14 | dtscode | why does proc getDaysLeft(year_s: string, today: string, holiday: string): string = cause invalid indentation errors? |
20:22:35 | * | Jehan` joined #nim |
20:22:56 | vikaton | dtscode: code? |
20:22:58 | * | matkuki quit (Quit: ChatZilla 0.9.91.1 [Firefox 38.0.1/20150513174244]) |
20:23:15 | dtscode | thats the only important part |
20:23:23 | dom96 | gist all of your code please |
20:24:18 | dtscode | *sigh* fine. I guess so. https://gist.github.com/DTSCode/5487bd9d059531c5a015 but it is literally only line 5. |
20:25:07 | dom96 | that's not where the error happens |
20:26:08 | dom96 | you're missing a parenthesis on line 54 |
20:26:20 | dtscode | :3 |
20:26:41 | dtscode | my bad. I read that as line 5 |
20:26:54 | vikaton | lmao |
20:27:16 | dtscode | I'm a total jackass aren't I? |
20:27:54 | Jehan` | nah, just human. :) |
20:28:01 | Jehan` | Welcome to the club. :) |
20:28:01 | pigmej | reactormonk: do you have any sample entries / lines to nimsuggest epc / |
20:28:01 | pigmej | ? |
20:28:10 | reactormonk | pigmej, see scratch.el |
20:29:18 | pigmej | oh thx |
20:29:39 | * | gyeates quit (Ping timeout: 265 seconds) |
20:29:54 | * | gsingh93 joined #nim |
20:30:40 | * | filcuc joined #nim |
20:31:00 | UberLambda | pigmej: just being curious, do you currently use Autocomplete or Company-mode? |
20:31:34 | UberLambda | I'm considering removing company-mode just to be able to install the nim plugin for autocomplete... or porting it to a company-mode hook |
20:31:54 | * | vendethiel quit (Ping timeout: 245 seconds) |
20:32:18 | pigmej | UberLambda: glad to finally see you there |
20:32:34 | pigmej | UberLambda: reactormonk + I talked about nim-suggest + epc |
20:32:39 | dom96 | dtscode: you should really wrap your code to 80 chars btw |
20:32:49 | pigmej | reactormonk wrote nim-suggest epc server |
20:33:00 | UberLambda | pigmej: :D |
20:33:03 | reactormonk | it should work... I just can't get company to run |
20:33:05 | dtscode | dom96: This is a throwaway toy :D |
20:33:14 | pigmej | reactormonk: http://sixty-north.com/blog/a-more-full-featured-company-mode-backend ? |
20:33:17 | pigmej | have you seen this ? |
20:33:21 | * | Matthias247 joined #nim |
20:34:48 | reactormonk | pigmej, nope. I have some text properties on there which should help |
20:35:00 | reactormonk | I mean you can always add more information, but first get it to suggest anythign at alll |
20:35:10 | pigmej | yeah yeah |
20:35:20 | pigmej | I already did epc with python backend |
20:35:34 | pigmej | so I will try to find it first, and then maybe it will work somehow ;) |
20:36:52 | pigmej | UberLambda: have you ever written company backend ? |
20:37:19 | pigmej | btw reactormonk http://sixty-north.com/blog/writing-the-simplest-emacs-company-mode-backend this one is 'simple' I will experiment with it |
20:37:20 | pigmej | ;) |
20:37:45 | UberLambda | pigmej: not really, I just followed the tutorial some time ago. It didn't seem too hard to implement for simple things... but I don't know if RPC would make it much more complex :P |
20:38:21 | pigmej | without epc you could just complete keywords |
20:38:47 | UberLambda | pigmej: that would be something... |
20:39:12 | UberLambda | I'm not that good at elisp though... I just switched from vim, like, one month ago |
20:40:03 | reactormonk | UberLambda, it's not that hard |
20:40:29 | pigmej | it is;p |
20:40:47 | UberLambda | reactormonk: hm, but I come from a really "imperative" background and I still have to learn to think more functionally |
20:41:08 | reactormonk | UberLambda, elisp is very imperative |
20:41:53 | UberLambda | reactormonk: oh? It seemed to use mapc & friends quite a bit |
20:42:13 | reactormonk | UberLambda, that too. |
20:42:34 | pigmej | UberLambda: elisp is 'just' a lisp... |
20:43:26 | UberLambda | reactormonk, pigmej: I guess it's time to fiddle a bit with my Emacs config again :P |
20:46:04 | pigmej | UberLambda: I'm elisp n00b |
20:47:26 | UberLambda | pigmej: I'm n00bier |
20:47:34 | UberLambda | also, /home/paolo/.nimble/pkgs/compiler-0.10.3/compiler/nimfix/prettybase.nim(10, 8) Error: cannot open 'ast' |
20:47:47 | UberLambda | ... seems like I can't install nimsuggest |
20:48:00 | pigmej | UberLambda: it's in Nim/compiler/nimsuggest |
20:48:12 | pigmej | then compile it nim c -d:release nimsuggest.nim |
20:48:22 | pigmej | and then copy to the same dir (bin) where you have ni |
20:48:23 | pigmej | nim |
20:49:08 | UberLambda | pigmej: ok, doing that now.... but I'd hoped that the Nimble version would have worked. Seems like the compiler needs to be updated & recompiled, but fails because it doesn't find the ast module? |
20:50:20 | pigmej | afair nimble version of nimsuggest is totally broken |
20:50:38 | pigmej | reactormonk: hmm, I do have always 'nil' as a return from epc |
20:50:49 | reactormonk | pigmej, ok, that would explain a lot |
20:50:57 | dom96 | pigmej: indeed. If somebody could take a look as to why that would be brilliant. |
20:51:00 | reactormonk | enable epc debugging (see scratch.el) |
20:51:02 | dom96 | *why that is |
20:51:04 | pigmej | yeah yeah |
20:51:23 | reactormonk | and see if your query works with nimsuggest stdout |
20:51:26 | pigmej | reactormonk: is even nil supposed to be returned? |
20:52:26 | reactormonk | pigmej, the epc debug should be a bit longer than nil |
20:53:29 | pigmej | ha! |
20:53:35 | pigmej | I did path error;) |
20:54:31 | UberLambda | uh oh... nimsuggest.nim(17, 44) Error: cannot open 'sexp' |
20:55:50 | * | toadest quit (Quit: See my work at lukethetechman.wordpress.com) |
20:57:32 | reactormonk | ^^ |
20:57:44 | UberLambda | I don't understand... sexp.nim is in "compiler" |
20:58:06 | UberLambda | I mean in lib/pure |
20:58:51 | pigmej | UberLambda: copy it to bin |
20:58:55 | pigmej | (nimsuggest) |
21:00:00 | UberLambda | pigmej: I ended up adding ../../lib/pure to nimsuggest.nim.cfg... compiler/nimfix/pretty.nim(26, 25) Error: undeclared identifier: 'getConfigVar' |
21:00:10 | UberLambda | pigmej: I'll try copying it to bin... |
21:01:26 | UberLambda | pigmej: same thing :( |
21:02:18 | reactormonk | UberLambda, follow the instructions in the issue |
21:04:06 | UberLambda | reactormonk: sorry, which issue? I could only find two regarding nimsuggest moving to a new repo |
21:04:09 | * | InteractOSDev joined #nim |
21:04:13 | * | InteractOSDev left #nim (#nim) |
21:04:16 | reactormonk | UberLambda, on nim-mode |
21:04:44 | UberLambda | reactormonk: oh |
21:04:57 | reactormonk | https://github.com/reactormonk/nim-mode/issues/12 |
21:05:07 | * | ingsoc quit (Ping timeout: 250 seconds) |
21:06:04 | UberLambda | reactormonk: nice opening post, lol |
21:06:31 | reactormonk | UberLambda, a bit of humor helps :-) |
21:07:00 | * | ingsoc joined #nim |
21:08:56 | pigmej | reactormonk: what woudl be the goal with nimsuggest + epc ? |
21:09:11 | UberLambda | reactormonk, pigmej: I'll try downloading from the epc branch tomorrow, gtg now. Bye :) |
21:09:13 | reactormonk | pigmej, what exactly do you want to know? |
21:09:26 | * | UberLambda quit (Quit: GTG) |
21:10:46 | pigmej | I mean, my emacs/elisp fu is a bit too low to make it fully working probably, but I could probably manage company to return usefull thigns |
21:11:59 | * | dalarmmst joined #nim |
21:15:26 | * | kumul joined #nim |
21:17:22 | * | skyfex quit (Ping timeout: 256 seconds) |
21:36:09 | pigmej | reactormonk: ~it worked |
21:36:14 | pigmej | ~worked |
21:36:14 | reactormonk | pigmej, \o/ |
21:36:32 | pigmej | yeah |
21:36:40 | pigmej | far far from success though |
21:36:51 | pigmej | but all we need now is to format epc response |
21:38:09 | reactormonk | I think company-nim has a few things for this |
21:38:10 | pigmej | reactormonk: http://wklej.to/QHYGd/text all I did ;D (notice it tries to use :async but I call epc-sync in backend) |
21:38:35 | reactormonk | hm, duh. |
21:38:49 | reactormonk | just go for sync. It should be fast enough. |
21:38:57 | pigmej | async will be fine |
21:39:02 | pigmej | I mean it's easy generally |
21:39:10 | pigmej | epc has some macros for async |
21:39:12 | pigmej | afair |
21:40:39 | * | wb quit (Ping timeout: 250 seconds) |
21:42:29 | * | jubalh quit (Quit: byw) |
21:45:37 | pigmej | reactormonk: where did you stopped with company ? |
21:46:12 | reactormonk | pigmej, I couldn't get it to complete |
21:46:19 | reactormonk | aka it didn't invoke at all |
21:46:59 | pigmej | ah ok |
21:50:54 | * | BlaXpirit quit (Quit: Quit Konversation) |
21:55:36 | * | ingsoc quit (Ping timeout: 252 seconds) |
21:59:33 | * | dalarmmst quit (Ping timeout: 265 seconds) |
22:02:37 | * | vendethiel joined #nim |
22:04:48 | * | eventualbuddha quit (Ping timeout: 276 seconds) |
22:05:57 | * | OnO quit (Quit: My iMac has gone to sleep. ZZZzzz…) |
22:14:39 | * | filcuc quit (Quit: Konversation terminated!) |
22:15:06 | * | gyeates joined #nim |
22:15:47 | * | mikolalysenko quit (Ping timeout: 252 seconds) |
22:26:33 | * | vendethiel quit (Ping timeout: 265 seconds) |
22:39:44 | * | eventualbuddha joined #nim |
22:42:23 | * | toadest joined #nim |
22:42:28 | * | Jesin quit (Quit: Leaving) |
22:42:31 | * | toadest quit (Changing host) |
22:42:31 | * | toadest joined #nim |
22:42:31 | * | toadest quit (Changing host) |
22:42:31 | * | toadest joined #nim |
22:45:46 | * | gsingh93 quit (Ping timeout: 272 seconds) |
22:46:47 | * | Jehan` quit (Quit: Leaving) |
22:57:03 | toadest | dom96: What are the advantages of a nim kernel? Any? Using a higher level lang? |
22:59:55 | * | mikolalysenko joined #nim |
23:01:52 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:03:24 | vikaton | What are people who code in Nim called? |
23:03:45 | fowl | People |
23:04:12 | vikaton | Is there a zombie apocalypse I'm not aware of ? |
23:04:22 | fowl | Yes |
23:04:44 | fowl | The zombie virus mutated from some rust programmer's tetanus |
23:15:03 | * | datanoise quit (Ping timeout: 272 seconds) |
23:16:26 | dom96 | toadest: You can use all of Nim's nice features. Generics, iterators etc. |
23:16:36 | dom96 | toadest: also, you get a much better syntax than C. |
23:17:26 | toadest | Ok |
23:18:04 | * | gyeates quit (Ping timeout: 256 seconds) |
23:18:57 | * | pregressive quit (Remote host closed the connection) |
23:21:02 | toadest | Thanks dom |
23:21:07 | * | askatasuna quit (Ping timeout: 244 seconds) |
23:21:56 | _44535463686f646 | is there any VOD of the screencast thingy from today? |
23:24:43 | flaviu | "Not C syntax" is literally the last reason I use Nim. |
23:25:21 | flaviu | But modules, generics, no headers, GC? That's the interesting stuff. |
23:25:33 | fowl | Well its safer than c |
23:26:26 | flaviu | It's possible to be safe in C too. |
23:26:41 | flaviu | A little verbose, but not too bad. |
23:30:04 | _44535463686f646 | no shitty forced oop is a big ass plus |
23:32:47 | ozra | vikaton: Just, _not_ Nimrods, because those code in Rust ;-) |
23:33:40 | fowl | Yea you have to be disciplined to be safe in c :p |
23:33:43 | flaviu | ozra: Let's stay civil. |
23:34:24 | ozra | flaviu: Haha, yeah, just jokin! |
23:37:43 | * | Jesin joined #nim |
23:37:44 | * | pregressive joined #nim |
23:38:01 | _44535463686f646 | https://code.visualstudio.com/Updates#_rust |
23:38:04 | _44535463686f646 | no nim :( |
23:38:44 | _44535463686f646 | cant wait for the plugin system to replace sublime text |
23:38:44 | flaviu | _44535463686f646: Send them a PR! |
23:39:07 | _44535463686f646 | flaviu: its closed source with no plugin system yet! |
23:40:13 | jaco60 | can't wait for an IntelliJ plugin, too |
23:40:24 | _44535463686f646 | http://visualstudio.uservoice.com/forums/293070-visual-studio-code/suggestions/7752408-plugin-system |
23:42:01 | * | pregressive quit (Ping timeout: 256 seconds) |
23:42:48 | ozra | _44535463686f646: What editor? (I just found sublime, and am super happy with NimLime in it..) |
23:42:59 | _44535463686f646 | visual studio code |
23:43:10 | * | brson quit (Quit: leaving) |
23:43:17 | _44535463686f646 | ozra: yes i use sublime too with nimlime |
23:43:33 | _44535463686f646 | bug studio code will be better than sublime imo |
23:43:37 | _44535463686f646 | but* |
23:43:46 | ozra | studio code? |
23:43:54 | _44535463686f646 | visual studio code |
23:44:05 | _44535463686f646 | https://code.visualstudio.com/ |
23:44:25 | ozra | Oooh, haha. ok. Used that professionally, but I've never had windows on my private computer (happily ;-) so... |
23:44:34 | _44535463686f646 | no u havent |
23:44:38 | toadest | Im on windows now |
23:44:38 | _44535463686f646 | its a new editor |
23:44:46 | _44535463686f646 | its a linux / mac / windows editor |
23:44:51 | ozra | Aha, sorry. |
23:45:05 | ozra | Ok. Cool. Always good with new tools. If they're better ofc :) |
23:45:13 | _44535463686f646 | with multiple cursor, command palette, etcetc |
23:45:17 | toadest | I hate this computer |
23:45:31 | ozra | _44535463686f646: so.. sublime? ;) |
23:45:48 | _44535463686f646 | yes |
23:46:01 | _44535463686f646 | but i cant wait to use it instead of sublime. |
23:46:06 | ozra | Aha, open source? |
23:46:08 | toadest | Does nim have a cygwin port? |
23:46:10 | _44535463686f646 | even if i paid 70$ for it |
23:46:34 | _44535463686f646 | its still not open source, it might get open sourced eventually, but there will be a plugin system with package manager like sublime |
23:46:45 | * | Kingsquee joined #nim |
23:46:54 | ozra | Hmm. So what makes it better? |
23:47:30 | _44535463686f646 | small things that adds up + free |
23:47:41 | _44535463686f646 | and built by microsoft compared to a single person |
23:47:51 | toadest | Guess not... |
23:48:00 | toadest | Micro$oft is EVEEEL |
23:48:02 | flaviu | It uses the atom model, iirc |
23:48:03 | Xe | toadest: I can't imagine it won't work in cygwin |
23:48:07 | flaviu | webkit frontend. |
23:48:09 | toadest | Yeah.... |
23:48:19 | toadest | I'm sadly on windows and would be nice to use one shell |
23:48:31 | Xe | then install it from source in cygwin? |
23:48:36 | toadest | Instead of nim on windows AND gcc for everything else |
23:48:39 | _44535463686f646 | install what on windows? |
23:48:43 | toadest | Ooohhhh.... thanks Xe |
23:48:48 | ozra | flaviu: _44535463686f646 - if it's got the atom model and webkit frontend - its out! It doesn't respect linux fontrule settings - that's why I switched to sublime. Thanks for the intell. |
23:49:51 | vikaton | Rust is popular because of mozilla and samsung imo |
23:50:02 | _44535463686f646 | toadest: what are you trying to install on windows? |
23:50:24 | toadest | Linux Nim |
23:50:37 | _44535463686f646 | ? |
23:50:47 | toadest | The rest of my project builds on Linux |
23:50:53 | toadest | Im stuck on windoze rite now |
23:50:59 | toadest | I rather keep it lunux based |
23:51:00 | Xe | use putty? |
23:51:16 | toadest | Xe my linux laptop broke |
23:51:17 | _44535463686f646 | i use gitbash (mingw) |
23:51:19 | ozra | toadest: run in a VM box.. or will it be to heavy? |
23:51:23 | _44535463686f646 | and everything works great |
23:51:28 | toadest | Too heavy |
23:51:34 | ozra | yeah |
23:51:43 | toadest | 2GB ram filled with bloat |
23:51:48 | toadest | Laggy already |
23:52:02 | flaviu | toadest: Linux 2GB? Dunno what distro you're using. |
23:52:04 | ozra | aha |
23:52:22 | toadest | No.... Computer has 2gb |
23:52:24 | * | Trustable quit (Remote host closed the connection) |
23:52:36 | flaviu | ah. Get a better PC? Rent hardware? |
23:52:56 | toadest | This is while my pc is getting refurbed |
23:53:18 | _44535463686f646 | what exactly not working with nim on your windows? |
23:53:32 | toadest | Nothing isn't working |
23:53:37 | toadest | I just want the linux version |
23:54:01 | _44535463686f646 | why |
23:54:12 | flaviu | toadest: Rent hardware in the cloud. It's the cheapest and easiest method. |
23:54:31 | * | yglukhov___ quit (Quit: Be back later ...) |
23:54:47 | _44535463686f646 | your on windows, no clue what you would do with the linux version |
23:55:10 | toadest | Good idea,falviu |
23:55:17 | toadest | _44535463686f646: I explained this |
23:55:27 | toadest | The rest of my project builds on Linux |
23:55:31 | toadest | Im stuck on windoze rite now |
23:55:34 | _44535463686f646 | ... |
23:55:35 | toadest | I rather keep it lunux based |
23:55:42 | toadest | *linux |
23:55:47 | ozra | toadest: flaviu s idea was on target :) |
23:55:53 | _44535463686f646 | what do you use that is linux specific? |
23:55:57 | toadest | Yes |
23:55:59 | toadest | GCC |
23:56:02 | _44535463686f646 | .. |
23:56:06 | _44535463686f646 | i use gcc |
23:56:11 | _44535463686f646 | and im on windows |
23:56:11 | toadest | Cross and gxemu |
23:56:13 | _44535463686f646 | mingw |
23:56:19 | toadest | Mingw != GCC |
23:56:30 | _44535463686f646 | mingw=gcc |
23:56:32 | ozra | toadest: how long til you get your machine back? |
23:56:39 | toadest | Probably 1.5w |
23:57:17 | ozra | ooh.. well then: either go with windows setup for now, start hacking, switch to linu later. Or go with the "cloud ware".. I guess. |
23:57:45 | toadest | _44535463686f646: No..... theyre different.... minGW is minamalist GNU but not GCC... maybe it has a modified GCC but mingw isn't gnu based anymore |
23:57:59 | toadest | So try modified gcc with other stuff |
23:58:18 | toadest | Definentely does not = |
23:59:02 | toadest | ozra Back me up? Or am I wrong? |
23:59:13 | _44535463686f646 | but exactly |
23:59:15 | _44535463686f646 | what isnt working? |
23:59:22 | toadest | Nothing isnt working |
23:59:27 | toadest | I just want the linux version |
23:59:30 | _44535463686f646 | why? |
23:59:39 | toadest | The rest of my project builds on Linux |
23:59:43 | toadest | Im stuck on windoze rite now |
23:59:48 | _44535463686f646 | what does 'build on linux' means |
23:59:48 | toadest | I rather keep it lunux based |
23:59:53 | _44535463686f646 | what is linux specific |