00:03:10 | freezerburnV | What are the rules for creating a prefix proc? |
00:03:23 | * | yglukhov quit (Ping timeout: 244 seconds) |
00:24:34 | * | vendethiel quit (Ping timeout: 244 seconds) |
00:31:00 | * | akaisora_ quit (Remote host closed the connection) |
00:32:23 | * | akaisora_ joined #nim |
00:32:55 | * | akaisora_ quit (Read error: Connection reset by peer) |
00:35:08 | * | yglukhov joined #nim |
00:37:15 | * | Jesin quit (Ping timeout: 260 seconds) |
00:38:41 | * | vendethiel joined #nim |
00:39:06 | * | Jesin joined #nim |
00:39:12 | * | akaisora_ joined #nim |
00:39:37 | * | yglukhov quit (Ping timeout: 250 seconds) |
00:39:39 | * | skrzyp joined #nim |
00:40:17 | * | Guest3694 quit (Changing host) |
00:40:17 | * | Guest3694 joined #nim |
00:40:19 | * | Guest3694 is now known as \u |
00:46:58 | * | michael_campbell quit (Ping timeout: 244 seconds) |
00:47:26 | * | akaisora_ quit (Read error: Connection reset by peer) |
00:52:05 | Demos | wowowow the sql code works |
00:53:16 | Demos | https://gist.github.com/barcharcraz/eea2c887787b9843e8f4902559c82509 |
00:57:29 | Demos | sequences are translated into BLOBs, not foreign key constraints |
00:59:23 | * | yglukhov joined #nim |
01:00:54 | * | michael_campbell joined #nim |
01:01:32 | * | vendethiel quit (Ping timeout: 272 seconds) |
01:02:14 | * | vendethiel joined #nim |
01:04:05 | * | yglukhov quit (Ping timeout: 260 seconds) |
01:05:05 | * | akaisora_ joined #nim |
01:09:23 | * | mcc joined #nim |
01:10:15 | mcc | Deepcopy copies not just an object but also its references, right? Should I expect deepCopy to work on a recursive data structure? |
01:21:03 | * | michael_campbell quit (Ping timeout: 244 seconds) |
01:23:32 | * | yglukhov joined #nim |
01:28:03 | * | yglukhov quit (Ping timeout: 240 seconds) |
01:39:07 | * | michael_campbell joined #nim |
01:41:18 | Demos | I'm not sure. I suspect not though |
01:46:47 | * | Demos quit (Read error: Connection reset by peer) |
01:47:08 | * | Demos joined #nim |
01:48:31 | kier | deepcopy is designed for making a full copy of a value in order to pass it to another thread, so I would have thought that it would work recursively |
01:49:00 | * | vendethiel quit (Ping timeout: 276 seconds) |
01:56:15 | * | chemist69 quit (Ping timeout: 258 seconds) |
01:57:40 | * | vendethiel joined #nim |
01:59:54 | * | yglukhov joined #nim |
02:04:18 | * | yglukhov quit (Ping timeout: 258 seconds) |
02:09:58 | * | chemist69 joined #nim |
02:36:07 | * | yglukhov joined #nim |
02:39:48 | * | vendethiel quit (Ping timeout: 250 seconds) |
02:41:00 | * | yglukhov quit (Ping timeout: 276 seconds) |
02:52:15 | * | vendethiel joined #nim |
02:57:58 | * | deavmi_mobile quit (Read error: Connection reset by peer) |
02:58:02 | * | deavmi_mobile2 joined #nim |
03:00:21 | * | yglukhov joined #nim |
03:04:55 | * | yglukhov quit (Ping timeout: 244 seconds) |
03:09:51 | * | michael_campbell quit (Ping timeout: 246 seconds) |
03:14:32 | * | vendethiel quit (Ping timeout: 272 seconds) |
03:22:02 | mcc | In testing, it looks like when I tell deepcopy to copy a recursive structure (a which points to b which points to a) it gets confused and mutates the structure considerably. how surprising is this? |
03:36:31 | * | yglukhov joined #nim |
03:37:20 | Demos | I'm not suprised that it does not work, but it probably should not do that! |
03:38:33 | Demos | there are plans for custom copy operators associated with types (like c++ has), but I'm not sure how well they work as of now |
03:39:19 | Demos | and for a recursive structure I think it's reasonable to implement your own thing, since the compiler does not really know which references an object holds actually form cycles |
03:40:06 | mcc | Hm |
03:40:18 | mcc | It seems like the limitations should at least be documented. |
03:40:21 | mcc | I am going to file an issue |
03:40:39 | * | yglukhov quit (Ping timeout: 246 seconds) |
03:41:14 | Demos | yeah if it corrupts the original object it should probably be an issue |
03:41:35 | mcc | actually it is weirder than that |
03:41:53 | mcc | unless my tests are wrong, it corrupts the original object *once*, and then if i repeat, it eventually crashes |
03:42:53 | Demos | I bet it's because it also screws with the refcounts of the object |
03:43:24 | mcc | ugh :( |
03:43:34 | Demos | see if calling GC_fullcollect() after each copy makes it crash faster |
03:44:09 | * | Jesin quit (Quit: Leaving) |
03:44:21 | Demos | so my recomendation would be to just write your own copy function. The compiler has no way of generating correct code for copying a cyclic datastructure (I think) |
03:46:47 | mcc | actually, my program does not even contain an instance of deepcopy(). right now i am just trying to document a compiler bug :) |
03:47:14 | mcc | my program uses shallowcopy, but i intially wrote deepcopy and found if i deepcopied repeatedly it would crash in a strange way |
03:48:04 | * | Jesin joined #nim |
03:53:08 | mcc | Thanks for the help! |
03:56:58 | * | brson joined #nim |
03:57:19 | mcc | huh. oddly, GC_fullcollect() seems to make it not crash at all. |
04:00:13 | Demos | WHELP I just spent a good two hours debugging the fact that I forgot to actually call my render function |
04:00:58 | * | yglukhov joined #nim |
04:01:18 | freezerburnV | Demos: The most fun kind of debugging ;) |
04:01:44 | Demos | I hope this project works out, it's kinda an insane idea |
04:01:54 | mcc | personally i think the most fun kind of debugging is when you find out you have not been executing the same executable your compiler has been producing |
04:02:01 | mcc | or perhaps that you have been editing one file and building another |
04:02:10 | mcc | "fun" |
04:04:07 | mcc | what is the project? :O |
04:04:43 | Demos | I'm writing a game engine that uses an in memory sqlite database as it's primary scene datastructure |
04:05:10 | * | yglukhov quit (Ping timeout: 250 seconds) |
04:05:13 | Demos | I figure if I turn off serialized mode it may actually not be as slow as one may be led to suspect |
04:07:19 | mcc | huh |
04:07:41 | mcc | i mean, i dunno, there's postgres extensions that offer quadtrees and such |
04:07:52 | Demos | sqlite has R-trees built in |
04:09:00 | Demos | but for most actual mesh data I'm storing stuff in blobs. It's an experiment just to see what happens |
04:10:03 | * | akaisora_ quit (Ping timeout: 276 seconds) |
04:10:23 | * | endragor joined #nim |
04:14:15 | * | vktec quit (Ping timeout: 260 seconds) |
04:15:10 | freezerburnV | Demos: http://www.dataorienteddesign.com/dodmain/ |
04:15:29 | Demos | yes, I've read that |
04:16:59 | freezerburnV | Demos: Well alright then. Just wanted to make sure :) |
04:30:02 | * | vktec joined #nim |
04:35:28 | * | Jesin quit (Quit: Leaving) |
04:35:50 | * | Jesin joined #nim |
04:37:02 | * | yglukhov joined #nim |
04:37:19 | * | vendethiel joined #nim |
04:41:22 | * | yglukhov quit (Ping timeout: 252 seconds) |
04:45:28 | * | freezerburnV quit (Ping timeout: 264 seconds) |
04:49:34 | Demos | whelp my code works and is slow |
04:56:30 | * | vktec quit (Ping timeout: 272 seconds) |
04:58:03 | * | vendethiel quit (Ping timeout: 244 seconds) |
04:59:01 | * | deavmi_mobile2 quit (Read error: No route to host) |
04:59:09 | * | deavmi_mobile joined #nim |
05:00:31 | * | Demos quit (Quit: Leaving) |
05:01:31 | * | yglukhov joined #nim |
05:05:19 | * | vktec joined #nim |
05:06:28 | * | yglukhov quit (Ping timeout: 264 seconds) |
05:20:06 | * | s4 joined #nim |
05:37:42 | * | yglukhov joined #nim |
05:41:16 | * | brson quit (Ping timeout: 258 seconds) |
05:41:22 | skrzyp | I'm trying to compile Nimble. |
05:41:41 | skrzyp | Tag v0.7.4 from git, which is the last stable release |
05:41:58 | * | yglukhov quit (Ping timeout: 244 seconds) |
05:42:43 | skrzyp | nimblepkg/nimscriptsupport.nim(8, 11) Error: cannot open 'compiler/ast' |
05:43:00 | skrzyp | That's what it says after 'nim -d:release c -r src/nimble -y install' |
05:43:23 | skrzyp | Nim is v0.14.2, OS is OpenBSD/amd64 |
05:50:58 | * | vendethiel joined #nim |
05:51:06 | * | brson joined #nim |
05:56:02 | * | brson quit (Ping timeout: 272 seconds) |
06:13:54 | * | yglukhov joined #nim |
06:14:52 | * | vendethiel quit (Ping timeout: 264 seconds) |
06:18:09 | * | yglukhov quit (Ping timeout: 244 seconds) |
06:18:54 | * | brson joined #nim |
06:19:49 | * | endragor_ joined #nim |
06:20:48 | * | vendethiel joined #nim |
06:21:50 | * | GangstaCat quit (Quit: Leaving) |
06:22:48 | * | endragor quit (Ping timeout: 244 seconds) |
06:33:55 | * | endragor_ quit (Remote host closed the connection) |
06:34:34 | * | endragor joined #nim |
06:46:37 | * | mcc quit (Quit: Connection closed for inactivity) |
06:49:31 | * | xet7 joined #nim |
07:02:33 | * | vendethiel quit (Ping timeout: 240 seconds) |
07:10:01 | * | Trustable joined #nim |
07:22:27 | * | PMunch joined #nim |
07:29:23 | * | sdw quit (Read error: Connection reset by peer) |
07:31:31 | * | gokr joined #nim |
07:33:36 | * | yglukhov joined #nim |
07:42:33 | gokr | jvapayne doesn't happen to be here on IRC? |
07:43:25 | * | vendethiel joined #nim |
07:45:56 | * | Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif) |
07:52:21 | * | cheatfate quit (Quit: Leaving) |
07:59:56 | * | cheatfate joined #nim |
08:03:32 | * | cheatfate quit (Client Quit) |
08:03:46 | * | cheatfate joined #nim |
08:04:01 | * | vendethiel quit (Ping timeout: 240 seconds) |
08:09:55 | gokr | lazypenguin: The hard part with scale is the lack of reliability in larger networks with many nodes. This is why things like Erlang OTP is so popular for really large scale stuff - it tackles a very hard problem. Most of the large scale NoSQL systems tackle similar issues (CAP theorem etc). |
08:10:22 | * | PMunch quit (Remote host closed the connection) |
08:12:44 | * | kingofoz quit (Read error: Connection timed out) |
08:13:41 | * | kingofoz joined #nim |
08:26:06 | * | PMunch_ joined #nim |
08:26:40 | * | PMunch_ is now known as PMunch |
08:28:39 | * | deavmi_mobile quit (Read error: Connection reset by peer) |
08:33:38 | * | deavmi_mobile joined #nim |
08:40:03 | * | PMunch quit (Quit: leaving) |
08:41:01 | * | vendethiel joined #nim |
08:48:41 | * | deavmi_mobile quit (Read error: No route to host) |
08:50:08 | * | deavmi joined #nim |
08:52:35 | deavmi | ello all |
08:52:36 | deavmi | :) |
08:53:22 | * | brson quit (Ping timeout: 272 seconds) |
08:53:35 | * | Anti-GPL joined #nim |
08:53:57 | deavmi | anti-gpl |
08:53:58 | deavmi | lol |
08:54:02 | deavmi | that name |
08:54:43 | * | PMunch joined #nim |
08:54:55 | * | Anti-GPL_ joined #nim |
08:55:18 | Anti-GPL_ | deavmi: I hate GPL-licensed softwares, so much. |
08:55:57 | skrzyp | Anti-GPL_: what do you use instead? |
08:56:01 | skrzyp | BSD-licensed ones? |
08:56:09 | * | anti-MIT joined #nim |
08:56:16 | anti-MIT | I hate MIT software so much |
08:56:23 | anti-MIT | AS WELL as BSD |
08:56:26 | deavmi | XD |
08:56:36 | deavmi | I love anti-mit (definately not the same user as me) |
08:56:47 | Anti-GPL_ | Come on! Nobody hates BSD and MIT, because they are more free and open. |
08:56:52 | deavmi | I do |
08:56:56 | deavmi | I don't hate. I dislike |
08:57:06 | deavmi | I am a GNU boi |
08:57:24 | skrzyp | tfw *!*@*gateway/web/freenode/ip.* |
08:57:28 | Anti-GPL_ | I'm a BSD boi |
08:57:54 | * | Anti-GPL quit (Ping timeout: 250 seconds) |
08:58:17 | skrzyp | I'm writing this from actual OpenBSD desktop |
08:58:21 | deavmi | Where's public domain boi |
08:58:24 | * | public-domain-bo joined #nim |
08:58:28 | deavmi | Ah there |
08:59:06 | skrzyp | but I'm disappointed that nobody helped me with the nonextistent dependency problem which I described before |
08:59:16 | * | Demon_Fox quit (Ping timeout: 264 seconds) |
08:59:25 | Anti-GPL_ | skyzap: Talk. |
08:59:35 | * | filcuc joined #nim |
08:59:42 | Araq | skrzyp: these problems have been reported already |
08:59:45 | skrzyp | tab-completion is your friend |
08:59:54 | Araq | I dunno if linux packaging screwed it up |
08:59:56 | * | anti-MIT left #nim (#nim) |
08:59:59 | * | public-domain-bo left #nim (#nim) |
09:00:24 | Araq | skrzyp: try the install_nimble.nims script |
09:00:45 | skrzyp | Araq: we're using own method to build packages, and lang/nim port does it by hand (without invoking koch) |
09:01:01 | Anti-GPL_ | Hi Araq! it's good to see you. |
09:01:37 | skrzyp | ~ $ (find /usr/ports/lang/nim/ && echo && cat /usr/ports/lang/nim/Makefile ) | curl -F 'sprunge=<-' sprunge.us |
09:01:39 | skrzyp | http://sprunge.us/KSSL |
09:02:30 | Araq | oh my. |
09:02:53 | Araq | well if you patch everything, you might as well patch it properly then. |
09:03:02 | Araq | and don't complain if it doesn't work. |
09:03:04 | skrzyp | I'm not a maintainer. |
09:03:15 | * | bjz joined #nim |
09:03:37 | skrzyp | And I'm not responsible for maintainer's tasks, but those patches are mostly slight modifications for CFLAGS |
09:05:09 | Anti-GPL_ | Araq: What do you say bout Nim for AI programming? |
09:05:45 | skrzyp | It's a general purpose language, so I think there are nothing what prevents you to do that, hm? |
09:06:22 | cheatfate | skrzyp, then maybe you need to ask maintainer? |
09:06:52 | skrzyp | cheatfate: I did that too, just right before asking here :) |
09:07:05 | skrzyp | But I'm asking here too because maybe someone else had the same problem |
09:08:09 | Anti-GPL_ | skylaz: |
09:09:20 | * | abbat joined #nim |
09:09:53 | cheatfate | skrzyp, i have openbsd but i'm not installing nim with packages system, i'm using git and devel version |
09:10:23 | cheatfate | and it works for me |
09:10:46 | skrzyp | how do you keep up with updates? |
09:13:06 | cheatfate | skrzyp, `git pull origin` :) |
09:13:57 | cheatfate | skrzyp, just install git and you can use instructions from here https://github.com/nim-lang/Nim |
09:14:26 | cheatfate | you can install it in home directory, as me |
09:16:58 | * | Anti-GPL_ quit (Ping timeout: 250 seconds) |
09:19:55 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
09:21:37 | * | PMunch quit (Quit: leaving) |
09:22:44 | * | PMunch joined #nim |
09:24:45 | * | vendethiel quit (Ping timeout: 258 seconds) |
09:39:33 | * | jjido joined #nim |
09:42:39 | * | M-max quit (Remote host closed the connection) |
09:42:39 | * | Flox42 quit (Remote host closed the connection) |
09:42:39 | * | M-Quora quit (Remote host closed the connection) |
09:45:47 | * | brson joined #nim |
09:47:06 | * | bjz joined #nim |
09:47:42 | * | M-Flox joined #nim |
09:52:35 | * | kingofoz quit (Ping timeout: 260 seconds) |
09:52:49 | * | kingofoz joined #nim |
09:59:12 | * | vendethiel joined #nim |
10:05:21 | * | brson quit (Ping timeout: 240 seconds) |
10:08:05 | * | M-Flox quit (Remote host closed the connection) |
10:08:33 | * | brson joined #nim |
10:11:32 | * | M-Flox joined #nim |
10:26:06 | * | abruanese joined #nim |
10:26:58 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
10:27:11 | deavmi | Hotline bling |
10:37:00 | * | bjz joined #nim |
10:41:54 | * | arnetheduck joined #nim |
10:43:56 | * | elrood joined #nim |
10:50:04 | * | Kim__ joined #nim |
10:54:20 | * | brson quit (Ping timeout: 272 seconds) |
10:55:30 | Kim__ | Hello beautiful people |
10:57:27 | jjido | You noticed me :} |
10:57:47 | Kim__ | jjido: You are a girl? |
10:58:16 | Kim__ | Is there any female programmer in this chat?? |
10:58:28 | jjido | Kim__ no I am not |
10:58:29 | Kim__ | I love the girls who like programming. |
10:58:46 | * | brson joined #nim |
10:58:53 | nicanaca0 | lol xD |
10:59:18 | PMunch | If you want a dating site, go to a dating site |
10:59:55 | Kim__ | Punck: I'm muslim, I can't do that :) |
11:00:04 | Araq | don't you have some country to invade? and slay some disbelievers? |
11:02:34 | PMunch | Is that guy basically ban on sight now? |
11:04:49 | dom96 | maybe let's not mute the whole channel? |
11:05:05 | jjido | Yes |
11:05:18 | * | Kim__ quit (Ping timeout: 250 seconds) |
11:05:27 | dom96 | FYI you muted deavmi too |
11:05:34 | dom96 | and whoever else connects via webchat |
11:05:48 | dom96 | I'm pretty sure +i is invite only as well. |
11:06:11 | vktec | Yeah |
11:06:17 | Araq | that's why you should do these things ... |
11:06:36 | dom96 | Araq: best way to learn is to mess up :P |
11:06:46 | PMunch | :P |
11:07:06 | PMunch | I wondered why you muted everyone and set invite only, thought you were going to do something fancy :P |
11:07:21 | * | dom96_test joined #nim |
11:07:27 | * | deavmi_mobile joined #nim |
11:07:28 | * | KeenASM joined #nim |
11:07:47 | * | vktec is sad that people have to take such steps to just be able to converse in peace |
11:07:48 | dom96 | er no |
11:08:04 | dom96 | that's not what I wanted to do |
11:08:36 | dom96 | nope, can't do that. Pity |
11:09:32 | dom96 | We could +m this channel and then give everyone voice |
11:09:35 | * | KeenASM quit (Client Quit) |
11:09:42 | dom96 | but then we would need to keep giving new trusted users voice |
11:09:47 | vktec | dom96: You might be able to "except" your dom96_test |
11:09:57 | vktec | (+e IIRC) |
11:10:04 | dom96 | vktec: oooh cool |
11:10:09 | PMunch | That's a bit tedious though.. |
11:10:13 | vktec | PMunch: Agreed |
11:10:17 | dom96_test | test |
11:10:18 | * | Margarita_ joined #nim |
11:10:21 | dom96 | yeah, that works. |
11:10:25 | PMunch | And new users won't be able to say anything |
11:10:27 | dom96 | we can do that. |
11:11:47 | * | dom96_test quit (Client Quit) |
11:12:36 | * | Vertex joined #nim |
11:12:47 | * | Vertex quit (Client Quit) |
11:13:03 | * | Margarita_ quit (Client Quit) |
11:15:02 | PMunch | Just ban everyone who spells my nick as Pmuck as that guy constantly keeps doing :P |
11:15:26 | PMunch | He apparenly doesn't know how to use tab completion |
11:16:26 | * | David95 joined #nim |
11:19:12 | * | vktec quit (Ping timeout: 250 seconds) |
11:19:29 | * | David95 quit (Client Quit) |
11:20:05 | * | vktec joined #nim |
11:20:50 | * | vktec quit (Excess Flood) |
11:21:56 | * | SPICY_ joined #nim |
11:22:28 | * | SPICY_ quit (Excess Flood) |
11:22:38 | dom96 | Seems to be working well :P |
11:23:06 | PMunch | Yeah :) |
11:28:46 | * | bjz_ joined #nim |
11:28:57 | * | vendethiel quit (Ping timeout: 258 seconds) |
11:30:26 | * | bjz quit (Ping timeout: 272 seconds) |
11:30:46 | * | vktec joined #nim |
11:34:20 | * | vendethiel joined #nim |
11:34:51 | dom96 | Anybody want to write a Nim-based Electron-like library? https://github.com/jangko/nimCEF |
11:35:52 | * | brson quit (Ping timeout: 264 seconds) |
11:37:58 | PMunch | Electron? |
11:38:16 | flyx | would Nim be of much use in that context? it's for JS-based stuff. is Nim's JS backend good enough to build an electron-based app? |
11:38:22 | dom96 | http://electron.atom.io/ |
11:38:41 | dom96 | hell yes it is |
11:38:51 | flyx | well it has been some time since I last tested it |
11:39:29 | flyx | I could try to compile NimYAML with it, so that I do not need the server backend on the live testing page anymore |
11:40:10 | dom96 | that would be a good test |
11:41:51 | * | Selfi joined #nim |
11:41:56 | flyx | btw, I hear good things about Servo/Graphene. might be an alternative for Electron. they wanted to go alpha in June. |
11:43:00 | * | brson joined #nim |
11:43:28 | PMunch | I can't help to think that Nim would be great for creating GUIs with the DSL stuff.. |
11:47:25 | gokr | We are using electron at Evothings. There are some heavy hitting stuff using it now - like VSCode from Microsoft (!) |
11:48:11 | gokr | FWIW Spry (1600 lines of Nim) compiles to js just fine, which means my REPL runs on the web :) |
11:48:40 | cheatfate | PMunch, and what is DSL? You mean DSL modem? |
11:48:50 | gokr | Domain Specific Language |
11:49:04 | * | kingofoz quit (Ping timeout: 264 seconds) |
11:49:06 | PMunch | What he said ^ |
11:49:18 | gokr | Which btw is one focus I have long term for Spry. |
11:49:24 | gokr | (being very DSL friendly) |
11:49:31 | * | kingofoz joined #nim |
11:50:17 | PMunch | Problem with GUI though is that it's not all that easy to explain them with text in a way that humans can easily understand |
11:50:25 | * | BitPuffin joined #nim |
11:50:31 | PMunch | Unless you implement something like ASCII art to build GUIs :P |
11:50:46 | gokr | Rebol/Red does a lot of DSL stuff for GUIs apparently successfully. |
11:51:16 | gokr | http://www.red-lang.org/2016/03/060-red-gui-system.html |
11:51:35 | * | vktec quit (Ping timeout: 260 seconds) |
11:55:47 | * | gokr quit (Ping timeout: 250 seconds) |
11:56:02 | * | vktec joined #nim |
11:58:01 | * | gokr joined #nim |
11:58:03 | * | brson quit (Ping timeout: 276 seconds) |
11:58:30 | * | Arrrr joined #nim |
11:58:44 | gokr | Haha, my daughter just switched off my router/server because she felt it shouldn't be on drawing electricity :) |
11:59:06 | PMunch | gokr, smooth :P |
11:59:17 | PMunch | Rebol/Red looks interesting |
11:59:35 | PMunch | But I'm not sure how it would look if you created a large application with it.. |
11:59:54 | gokr | I am borrowing some concepts from Rebol in Spry - especially the homoiconicity etc. |
12:00:09 | Arrrr | def- is this necessary? why not setLen https://github.com/kostya/benchmarks/blob/master/matmul/matmul.nim#L10 |
12:00:10 | gokr | Red is a pretty impressive work of art. |
12:00:20 | * | Selfi quit (Ping timeout: 250 seconds) |
12:02:01 | def- | Arrrr: I suggested that change but the author of the repository reverted it: https://github.com/kostya/benchmarks/pull/3 |
12:02:20 | gokr | I especially like the Parse stuff in Rebol/Red... let me find that article.... |
12:03:13 | gokr | http://www.red-lang.org/2013/11/041-introducing-parse.html |
12:04:22 | * | akaisora joined #nim |
12:07:01 | PMunch | Hmm, interesting |
12:10:56 | dom96 | def-: why was it reverted? |
12:13:05 | * | brson joined #nim |
12:16:13 | * | vendethiel quit (Ping timeout: 252 seconds) |
12:16:35 | * | jjido quit (Read error: Connection reset by peer) |
12:21:10 | * | Puck_ joined #nim |
12:24:22 | * | vendethiel joined #nim |
12:24:44 | * | chrisheller quit (Remote host closed the connection) |
12:25:04 | * | Puck_ quit (Client Quit) |
12:44:16 | * | freezerburnV joined #nim |
12:45:01 | * | vendethiel quit (Ping timeout: 240 seconds) |
12:48:10 | * | brson quit (Ping timeout: 260 seconds) |
12:51:30 | * | nsf quit (Quit: WeeChat 1.4) |
12:52:27 | deavmi_mobile | PMunch: xd |
12:52:36 | PMunch | ? |
12:52:45 | deavmi_mobile | gokr: red? |
12:55:36 | * | brson joined #nim |
12:56:04 | dom96 | Anybody have some free time to write a Gitter<->IRC and Slack<->IRC bridges for NimBot? :) |
12:57:46 | * | jjido joined #nim |
12:59:00 | * | vendethiel joined #nim |
13:02:25 | * | akaisora quit (Remote host closed the connection) |
13:02:53 | * | gernest joined #nim |
13:04:29 | gernest | hi, I’m new to nim, but comes from Golang background. I would like help, to relevant resources that will get me up to speed with nim. Thanks. |
13:06:31 | Araq | gernest: recent troll attacks made us all cautious |
13:07:19 | gernest | I am not a troll, if that is what you mean |
13:07:42 | gernest | My engllish isnt good though because I’m not a native english speaker |
13:08:18 | Araq | well here is something to get you started: http://nim-lang.org/learn.html |
13:10:48 | gernest | Araq: well, I have been going through that for a week. The information there is good but I cant connect alot of missing pieces. |
13:11:33 | Araq | ok, so ask something specific |
13:13:50 | gernest | Like I have come across code with procs declared followed by backtick like proc `*` |
13:15:58 | Araq | that declares an operator then |
13:16:01 | * | brson quit (Ping timeout: 240 seconds) |
13:16:02 | * | jjido quit (Remote host closed the connection) |
13:16:16 | Araq | it means multiplication is overloaded for some datatype |
13:16:22 | Araq | (usually vectors and such) |
13:16:51 | gernest | so, it is for overloading ? |
13:17:16 | * | abbat quit (Ping timeout: 264 seconds) |
13:18:11 | M-Flox | is dom96 around? |
13:20:16 | * | vendethiel quit (Ping timeout: 264 seconds) |
13:20:27 | dom96 | hey M-Flox |
13:20:30 | * | NimIsVeryGood joined #nim |
13:20:57 | M-Flox | oh, my nick is still M-Flox ... strange |
13:21:01 | * | gernest quit (Ping timeout: 240 seconds) |
13:21:41 | * | abbat joined #nim |
13:22:08 | dom96 | M-Flox: what's up? Why do you need me? |
13:22:17 | M-Flox | dom96: I am preparing a presentation about Nim for the department I am working in and I also bought your book. I was wondering if I am allowed to use some figures from your book (with reference of course) as they are nicely showing certain aspects/features of Nim. |
13:22:17 | * | gernest joined #nim |
13:22:29 | gernest | okay, will do more research! Thanks . |
13:22:55 | dom96 | M-Flox: sure, for a presentation it's fine :) |
13:23:48 | M-Flox | cool |
13:24:43 | * | NimIsVeryGood quit (Excess Flood) |
13:24:45 | * | M-Flox is now known as Flox42 |
13:26:52 | * | abbat quit (Ping timeout: 264 seconds) |
13:27:07 | nicanaca0 | dom96, can we have a link to your book? |
13:27:50 | Flox42 | https://www.manning.com/books/nim-in-action |
13:27:58 | * | gmpreussner quit (Quit: kthxbye) |
13:28:44 | * | abbat joined #nim |
13:29:07 | nicanaca0 | Cheers Flox42, I'll have a read through the free stuff at some point soon |
13:30:37 | gokr | deavmi_mobile: mmm... "red?".. yes? |
13:31:20 | * | freezerburnV quit (Ping timeout: 260 seconds) |
13:32:19 | * | chrisheller joined #nim |
13:34:09 | * | akaisora joined #nim |
13:34:47 | * | jjido joined #nim |
13:37:43 | * | vendethiel joined #nim |
13:43:46 | * | brson joined #nim |
13:48:02 | deavmi_mobile | gokr: très helpful |
13:48:06 | deavmi_mobile | infact |
13:48:10 | deavmi_mobile | trop helpful |
13:48:20 | gokr | red-lang.org |
13:50:34 | gokr | deavmi_mobile: I just wondered what it was you wondered like... "What is Red?" or whatever :) |
13:50:44 | deavmi_mobile | oh |
13:50:47 | deavmi_mobile | oh |
13:50:50 | deavmi_mobile | lol sorry |
13:50:51 | * | s4 quit (Quit: Konversation terminated!) |
13:51:16 | deavmi_mobile | cooleo |
13:51:19 | gokr | :) |
13:51:21 | deavmi_mobile | I was thinking of red |
13:51:26 | deavmi_mobile | the camera company |
13:51:35 | gokr | Ahum. |
13:52:15 | gokr | Anyway, its a modern reimplementation of Rebol - funded in China. The guy doing it is quite sharp - it compiles to native etc etc. Quite interesting even if you don't "like" the language itself. |
13:52:40 | gokr | Ok, gotta go, later |
13:53:32 | deavmi_mobile | it looks cool |
13:53:33 | deavmi_mobile | and fun |
13:53:39 | deavmi_mobile | especially for GUI people :) |
13:53:48 | deavmi_mobile | gokr: see you later :) |
13:54:40 | def- | PMunch: not sure, maybe to make all implementations more similar |
13:55:04 | PMunch | What? |
13:55:52 | PMunch | def-, what was that a comment to? |
13:56:10 | def- | oops, wrong person. dom96: not sure, maybe to make all implementations more similar |
13:57:20 | * | chrisheller quit (Remote host closed the connection) |
13:58:21 | dom96 | def-: ahh |
13:59:01 | * | donank joined #nim |
13:59:48 | * | donank quit (Client Quit) |
14:01:40 | * | akaisora quit (Ping timeout: 264 seconds) |
14:07:30 | * | akaisora_ joined #nim |
14:14:16 | * | Jesin quit (Quit: Leaving) |
14:23:31 | cheatfate | dom96, i have made check for you https://github.com/nim-lang/Nim/pull/4336#discussion_r67170192 |
14:23:53 | cheatfate | cell could not be nil, because it is not a ref. |
14:24:20 | dom96 | ok. Then it's up to Araq. |
14:26:07 | cheatfate | Araq, dom96 needs your help to commit my usage of your `system.protect()/system.dispose()` functions |
14:27:00 | cheatfate | Araq, please check it out :) https://github.com/nim-lang/Nim/pull/4336 |
14:27:08 | Araq | damn it, it's probably fine, don't be so impatient |
14:28:14 | * | filcuc quit (Read error: Connection reset by peer) |
14:28:45 | cheatfate | sorry |
14:29:35 | * | gernest_ joined #nim |
14:30:09 | * | gernest quit (Ping timeout: 276 seconds) |
14:30:09 | * | gernest_ is now known as gernest |
14:30:42 | * | nicanaca0 left #nim ("Leaving") |
14:30:48 | * | nicanaca0 joined #nim |
14:34:40 | * | abruanese quit (Ping timeout: 264 seconds) |
14:36:20 | * | chrisheller joined #nim |
14:39:49 | * | madmalik_ joined #nim |
14:44:02 | * | gernest quit (Quit: gernest) |
14:44:22 | * | pregressive joined #nim |
14:45:43 | * | gmpreussner joined #nim |
14:48:39 | * | nsf joined #nim |
14:53:25 | yglukhov | Araq: hi, narrowed the reason of my memory leaks. table.del(key) makes the gc keep the "deleted" value. if i do table[key] = nil; table.del(key), then everything works. |
14:54:01 | yglukhov | i tried to understand delImpl, but it looks too mysterious to me :( |
14:54:13 | Araq | it just sets a tombstone |
14:54:20 | Araq | so yeah, likely a problem |
14:54:31 | yglukhov | could you fix it please? |
14:55:50 | PMunch | Does anyone here know if persistent structures have been implemented in Nim? |
14:56:37 | namnguyen | what do you mean? |
14:56:46 | namnguyen | what is a persistent structure? like a building? |
14:57:19 | yglukhov | PMunch: never heard of any done in Nim. you could be the first to implement them ;) |
14:57:32 | PMunch | Woo |
14:57:49 | PMunch | namnguyen, persistent structures are structures that are imutable |
14:58:16 | PMunch | So if you do persistentList.add(item) it will return a pointer to a new structure with the item added but the original will not be modified |
14:58:32 | PMunch | To me more efficient most persistent data structures are implemented using tries |
14:59:03 | namnguyen | gotcha |
14:59:04 | PMunch | This way only a certain, fairly low, amount of nodes have to be copied |
14:59:21 | namnguyen | if it is append only, sure |
14:59:26 | PMunch | They are great for stuff like undos |
14:59:45 | namnguyen | undos, hmm, sounds like Command pattern to me. |
14:59:57 | * | vendethiel quit (Ping timeout: 250 seconds) |
15:01:29 | * | chrisheller quit (Remote host closed the connection) |
15:02:41 | * | endragor quit (Ping timeout: 240 seconds) |
15:02:57 | * | PMunch quit (Quit: leaving) |
15:06:47 | dom96 | Araq: How difficult would giving code the ability to modify stack traces be? |
15:07:50 | Araq | you can do it today with some .emit magic |
15:08:22 | dom96 | I would like to improve async's stack traces. |
15:10:20 | yglukhov | dom96, Araq: i think they firstly should be fixed as they are now. |
15:10:42 | yglukhov | haven't you noticed that sometimes, some frames/lines are skipped |
15:10:53 | * | Nimrod joined #nim |
15:11:42 | dom96 | yglukhov: i've noticed that sometimes it doesn't show the line number |
15:12:03 | yglukhov | dom96: sometimes it shows _wrong_ line number |
15:12:46 | yglukhov | i've noticed it a couple of times but did not bother to look into it |
15:13:08 | dom96 | yglukhov: oh yeah, it's been like that for some time. I think I've become desensitised to it. |
15:13:24 | * | Nimrod quit (Client Quit) |
15:13:41 | dom96 | Sometimes it points to the macro code which is a bit annoying. |
15:14:07 | yglukhov | Araq: can you explain the shallowCopy line please in delImpl? it overwrites the value being deleted with what? |
15:16:29 | Araq | yglukhov: no, instead try my patch please. |
15:16:39 | * | deavmi_mobile quit (Ping timeout: 258 seconds) |
15:19:54 | yglukhov | Araq: it works, thanks! |
15:22:34 | * | vendethiel joined #nim |
15:23:04 | Araq | yglukhov: please try to submit a test case for this |
15:23:32 | cheatfate | Araq, i think you just patched memory leaks for asyncdispatch too :) |
15:24:27 | * | chrisheller joined #nim |
15:25:03 | Araq | cannot really see how. a tombstone will eventually be overwritten |
15:25:17 | Araq | so it wasn't an unbounded memory leak |
15:25:53 | cheatfate | Araq, most manipulations with tables for asyncdispatch was made in selectors.nim |
15:29:16 | * | vktec quit (Ping timeout: 264 seconds) |
15:30:16 | * | Jesin joined #nim |
15:30:31 | * | FreezerburnV joined #nim |
15:31:28 | renesac_ | a hobin hood hash table implementation don't need tombstones and is very performant |
15:31:39 | renesac_ | could be a solution |
15:32:31 | cheatfate | renesac_, faster than cookoo? |
15:32:51 | renesac_ | possibly |
15:33:10 | dom96 | cheatfate: when we have: await fut or fut2, and one of the futures fails with an error. Do you think the `await` should raise it? |
15:33:49 | cheatfate | i dont think so |
15:34:00 | cheatfate | dom96, i dont think so |
15:34:09 | * | vktec joined #nim |
15:34:58 | dom96 | cheatfate: okay. I'm changing the semantics back to what they were with regards to 'await fut' |
15:35:09 | cheatfate | dom96, wait |
15:35:10 | dom96 | and noticed that the same behaviour was present for 'await fut or fut2' |
15:35:35 | dom96 | Now I could also make it so that it's up to the implementation of the infix operator (in this case `or`) |
15:35:40 | cheatfate | dom96, if we have technique to catch exception, then you dont need to change everything |
15:36:09 | cheatfate | but if we haven't then we need to give a way to recover from failure |
15:36:55 | dom96 | Right now you can use 'yield' as I mentioned here: https://github.com/nim-lang/Nim/issues/4170 |
15:37:32 | dom96 | You agreed that using 'await' on a future only shouldn't raise. |
15:38:02 | * | PMunch joined #nim |
15:41:21 | renesac_ | cheatfate: http://codecapsule.com/2013/11/17/robin-hood-hashing-backward-shift-deletion/ |
15:41:37 | renesac_ | he has also done an article on cuckoo hashing: http://codecapsule.com/2013/07/20/cuckoo-hashing/ |
15:43:45 | * | vendethiel quit (Ping timeout: 260 seconds) |
15:46:35 | * | akaisora_ quit (Remote host closed the connection) |
15:48:08 | kier | is it possible to get the captures from a regular expression match using the 're' module? |
15:48:13 | kier | or should I be using nre? |
15:49:07 | dom96 | just have to pass a 'matches' array I think |
15:49:55 | renesac_ | by the way, rust's standard hashmap is a robin hood hashtaable, so it mus be right! |
15:50:11 | kier | ah I see now, was only looking at return values |
15:50:15 | kier | dom96: thanks |
15:50:22 | * | pregressive quit (Remote host closed the connection) |
15:51:29 | * | abbat quit (Read error: Connection timed out) |
15:52:13 | * | abbat joined #nim |
15:52:26 | deavmi | Well that was nice. I just fell asleep whilst listening to vaporwave |
15:53:49 | yglukhov | Araq: i will post a test case when i get some spare time. |
15:54:44 | kier | deavmi: heh, sounds like you need more invigorating vaporwave |
15:54:52 | deavmi | no man |
15:55:00 | deavmi | I really needed that sleep. That felt so good. |
15:55:20 | deavmi | YUNG BAE (search it on youtube) it's playing now and it is so good |
15:56:45 | kier | looks neat, will have a listen later |
15:57:16 | deavmi | 'tis |
15:57:33 | deavmi | oh yes this sounds good too "SHAG - Know the feelin'" |
15:59:29 | deavmi | I've had enough MACITOSH PRO 420 |
15:59:34 | deavmi | * MACINTOSH |
16:00:17 | Araq | renesac_: this article is way easier to follow IMO: http://sebastiansylvan.com/post/robin-hood-hashing-should-be-your-default-hash-table-implementation/ |
16:00:27 | Araq | and immediately addresses all my concerns :P |
16:00:37 | Araq | so yeah, we should do that |
16:00:53 | renesac_ | indeed |
16:02:42 | renesac_ | but he seems to use tombstones in that algorithm |
16:03:00 | * | yglukhov quit (Ping timeout: 260 seconds) |
16:04:12 | Araq | true |
16:13:37 | renesac_ | just an idea for implicit uint conversion: maybe it is a good idea to create a type that is basically int, but that uints can implicity convert to |
16:14:03 | renesac_ | or just use "SomeInteger" everywhere and deal with the code duplication and the verbosiness of that type name |
16:16:26 | * | vendethiel joined #nim |
16:25:48 | cheatfate | Araq, this is better article http://codecapsule.com/2013/11/17/robin-hood-hashing-backward-shift-deletion/ |
16:33:01 | cheatfate | dom96, i think we must divide asyncdispatch.nim into pieces, because currently its a 70kb file and i think it will grow further |
16:34:18 | cheatfate | and maybe use `include` in asyncdispatch.nim to include pieces like `posix code` and `windows code` |
16:48:27 | dom96 | cheatfate: I dunno, I don't think at ~1600 lines it's not so bad. |
16:48:42 | dom96 | But perhaps you're right |
16:50:02 | * | benwbooth quit (Ping timeout: 244 seconds) |
16:52:18 | * | benwbooth joined #nim |
16:52:44 | * | yglukhov joined #nim |
16:54:05 | cheatfate | dom96, asynchronous DNS resolution is tough task, can i make resolveAddress(name: string): IPAddress in net.nim? |
16:54:10 | * | benwbooth quit (Max SendQ exceeded) |
16:54:23 | * | Dart joined #nim |
16:54:27 | * | jjido quit (Ping timeout: 276 seconds) |
16:54:43 | * | benwbooth joined #nim |
16:55:55 | * | shodan45 quit (Quit: Konversation terminated!) |
16:59:00 | * | arnetheduck quit (Ping timeout: 276 seconds) |
17:00:41 | * | pregressive joined #nim |
17:02:27 | * | vendethiel quit (Ping timeout: 258 seconds) |
17:03:15 | * | Dart quit (Quit: Page closed) |
17:03:44 | * | vendethiel joined #nim |
17:05:51 | * | gernest joined #nim |
17:06:16 | * | gernest quit (Client Quit) |
17:08:34 | dom96 | cheatfate: yeah |
17:12:30 | * | yglukhov quit (Remote host closed the connection) |
17:13:48 | * | brson quit (Ping timeout: 244 seconds) |
17:16:55 | * | yglukhov joined #nim |
17:18:00 | * | 1JTAADRVD joined #nim |
17:21:48 | * | brson joined #nim |
17:24:50 | kier | is it not possible to override `[]=` where the first argument is a tuple? |
17:25:33 | * | vendethiel quit (Ping timeout: 250 seconds) |
17:26:02 | * | abbat quit (Quit: Leaving) |
17:26:12 | Araq | why would it? |
17:26:18 | * | abbat joined #nim |
17:29:05 | * | vendethiel joined #nim |
17:29:25 | kier | eh, I should probably be using an object instead.. |
17:30:26 | * | vktec quit (Ping timeout: 258 seconds) |
17:35:52 | * | abbat quit (Ping timeout: 264 seconds) |
17:36:19 | * | abbat joined #nim |
17:38:23 | * | Arrrr quit (Read error: Connection reset by peer) |
17:40:26 | * | deavmi_mobile joined #nim |
17:43:23 | * | madmalik_ quit (Quit: Connection closed for inactivity) |
17:47:06 | * | NimOS joined #nim |
17:47:36 | * | NimOS quit (Client Quit) |
17:51:52 | dom96 | http://forum.nim-lang.org/t/2320 lol |
17:52:03 | dom96 | I'm just gonna ban him on the forum |
17:52:34 | * | vktec joined #nim |
17:53:08 | cheatfate | dom96, it looks like he got another target for his business |
17:53:16 | * | vendethiel quit (Ping timeout: 264 seconds) |
17:53:49 | namnguyen | little known, but a +b implies +q |
17:54:08 | * | abbat quit (Remote host closed the connection) |
17:54:37 | * | vendethiel joined #nim |
17:55:24 | * | Jesin quit (Quit: Leaving) |
17:56:41 | deavmi | kier: List of my music btw |
17:56:46 | deavmi | kier: Still working on it - https://deavmi.carteronline.net/music.html |
18:02:19 | namnguyen | mine is just white noise |
18:02:34 | namnguyen | it's surprisingly effective |
18:02:53 | * | zodiak_ joined #nim |
18:03:49 | * | zodiak quit (Ping timeout: 252 seconds) |
18:03:55 | dom96 | Nothing beats a bit of vacuum cleaner noise |
18:07:02 | * | yglukhov quit (Remote host closed the connection) |
18:08:05 | * | yglukhov joined #nim |
18:10:44 | * | 1JTAADRVD quit (Read error: Connection reset by peer) |
18:15:30 | cheatfate | Araq, if you get some time to spare i need your help here https://github.com/nim-lang/Nim/pull/4336#issuecomment-226247632 |
18:15:34 | * | yglukhov quit (Remote host closed the connection) |
18:17:26 | * | yglukhov joined #nim |
18:17:45 | * | vendethiel quit (Ping timeout: 246 seconds) |
18:24:36 | * | BitPuffin quit (Read error: Connection reset by peer) |
18:25:15 | deavmi | namnguyen: White noise |
18:25:20 | deavmi | namnguyen: Lol. Really. |
18:27:17 | * | vendethiel joined #nim |
18:40:30 | * | benwbooth quit (Ping timeout: 260 seconds) |
18:41:10 | * | PMunch quit (Quit: leaving) |
18:41:14 | kier | deavmi: hm, never thought about doing a list of music like that, it's a cool idea |
18:41:35 | * | pregressive quit (Remote host closed the connection) |
18:41:43 | deavmi | kier: Thanks. I am learning to use AsciiDoc. Also I like to do this as to get people immediately into a genre or style. |
18:41:55 | deavmi | So that they have some paths to follow to dive deeper into it all :) |
18:42:10 | * | pregressive joined #nim |
18:43:03 | kier | nice :) |
18:43:28 | * | benwbooth joined #nim |
18:43:30 | kier | https://bandcamp.com/kierdavis is a subset of my music. recent stuff is quite vapourwave-y |
18:43:45 | deavmi | going to take a listen |
18:43:45 | * | pregressive quit (Remote host closed the connection) |
18:43:51 | deavmi | Maybe you will appear on my list :) |
18:44:00 | * | pregressive joined #nim |
18:44:15 | deavmi | IK 2047 |
18:44:24 | deavmi | kier: Oooooh this is good. |
18:44:51 | * | nsf quit (Ping timeout: 250 seconds) |
18:44:55 | Araq | should we really move the website out of nim given that news need to be updated all the time? |
18:45:42 | * | pregressive quit (Remote host closed the connection) |
18:46:14 | * | pregressive joined #nim |
18:46:38 | def- | Araq: sounds reasonable |
18:47:16 | def- | Araq: the only problem I can imagine is that PRs that change behaviour can't add an entry to news at the same time |
18:47:46 | Araq | well the current news file is special I guess and remains part of nim |
18:48:18 | Araq | seems easy to do now that news are separated by release |
18:50:01 | * | vendethiel quit (Ping timeout: 240 seconds) |
18:50:13 | * | GangstaCat joined #nim |
18:51:27 | * | pregressive quit (Ping timeout: 276 seconds) |
18:54:46 | * | abbat joined #nim |
18:58:20 | * | vendethiel joined #nim |
19:10:19 | renesac_ | interesting, I can't do `for i in 0 ..< x: echo i` if x is `Positive` |
19:10:30 | renesac_ | the i inherits that range |
19:10:38 | renesac_ | is this intended? |
19:14:56 | * | abbat quit (Remote host closed the connection) |
19:19:18 | * | deavmi quit (Ping timeout: 250 seconds) |
19:28:57 | * | mostworst joined #nim |
19:34:39 | deavmi_mobile | Best music is in VH1 |
19:36:39 | namnguyen | deavmi_mobile, yea, no kidding. also checkout the album "Seaside Solo Piano" by Richard Evans. it's full of white noise with piano. really good background music imo. |
19:37:36 | deavmi_mobile | Okay. will do :P. |
19:43:03 | * | shodan45 joined #nim |
19:51:28 | * | Demos joined #nim |
19:51:43 | Demos | oh my god |
19:51:51 | Demos | the game data from sqlite database idea is actually working |
19:52:27 | * | Jesin joined #nim |
19:52:29 | Demos | down to 14ms per frame on a fairly high poly model |
19:52:37 | Demos | and most of that is in a function I control |
19:52:40 | Demos | and can make fast |
19:53:16 | * | akaisora joined #nim |
19:58:48 | * | Heisenberg_ joined #nim |
19:58:58 | * | Demon_Fox joined #nim |
20:01:12 | * | TheLemonMan joined #nim |
20:03:30 | * | Heisenberg_ quit (Ping timeout: 250 seconds) |
20:06:50 | * | vktec quit (Ping timeout: 258 seconds) |
20:08:21 | * | gokr quit (Ping timeout: 246 seconds) |
20:09:58 | * | lazypenguin1 joined #nim |
20:13:30 | * | Guest88360 quit (Ping timeout: 250 seconds) |
20:13:53 | * | vktec joined #nim |
20:20:11 | * | WickedShell joined #nim |
20:21:51 | WickedShell | Is anyone familiar with the glfw package? I'm just trying to get an example to run (on windows with mingw), but I can't get around missing GL/gl.h header. (I know how to solve this under linux, but I'm at a loss on windows) |
20:33:06 | * | ics joined #nim |
20:33:17 | * | mostworst quit (Ping timeout: 258 seconds) |
20:35:59 | * | sdw joined #nim |
20:40:28 | * | deavmi_mobile quit (Ping timeout: 244 seconds) |
20:43:48 | * | FreezerburnV quit (Quit: Leaving) |
20:43:50 | * | Nimer joined #nim |
20:44:19 | * | Nimer quit (Client Quit) |
20:45:44 | Demos | mememememe |
20:45:51 | Demos | pass -d:glfwDynlib |
20:45:54 | Demos | profit |
20:46:33 | Demos | you also may need to link user32.lib, opengl32.lib and shell32.lib |
20:46:47 | Demos | although I only had to do that when I was static linking aganst glfw |
20:46:53 | Demos | I'm using msvc by the way |
20:47:07 | Demos | things should be pretty much the same in a mingw or cygwin situation |
20:48:32 | WickedShell | ah that gets it through compiling. Fails to load the actual glfw3.dll after that but thats fairly easy to drop into the folder |
20:48:49 | Demos | yup! |
20:49:01 | Demos | cheers! |
20:49:16 | WickedShell | out of curiosity I noticed that when I tried to run the command without that flag and it was crashing on trying to find gl.h it would do it once, but it would never try to compile those files again and just error later on in the build process |
20:49:32 | WickedShell | the only way to force it to retry was to delete the contents of nimcache, is this expected? |
20:49:37 | WickedShell | (just starting to play with nim) |
20:56:15 | Araq | Demos: sounds like you should write a blog post |
20:57:14 | Araq | WickedShell: --forceBuild also does the trick |
20:57:27 | WickedShell | Araq, thanks :) |
20:59:47 | elrood | although this at most counts as a workaround, not a fix. the issue has come up before, just not consistently enough for a bug report, afair |
20:59:52 | * | deavmi_mobile joined #nim |
21:00:09 | * | benwbooth quit (Ping timeout: 276 seconds) |
21:00:39 | Araq | nim doesn't really deal with failing C compiles as it always produces valid C (modulo codegen bugs :P) |
21:00:51 | deavmi_mobile | when you internet doesn't work like it used to. :( |
21:01:00 | deavmi_mobile | modulo codegen bugs? |
21:01:47 | * | vktec quit (Ping timeout: 250 seconds) |
21:01:54 | Araq | well you know ... even the best compilers have bugs. and Nim even more. |
21:02:56 | * | brson quit (Quit: leaving) |
21:03:25 | elrood | not a real compiler..? ;P nim generates hash files for files it considers compiled, right? wouldn't it suffice to shift the generation of these files to after the c compiler has successfully returned? |
21:04:34 | elrood | haven't had a look at the internals obviously, just speaking off the top of my head here |
21:04:38 | * | deavmi_mobile quit (Read error: Connection reset by peer) |
21:04:46 | * | vktec joined #nim |
21:06:41 | Araq | elrood: yeah that would work except we call the C compiler in parallel for every C file, so it's slightly more work to determine which compiles failed |
21:06:54 | Araq | *compile |
21:07:14 | reactormonk | Check exit codes? |
21:07:59 | WickedShell | is the parrell build why it was doing "ccoommppiillaattiioonn tteerrmmiinnaatteedd.." ? |
21:08:29 | Araq | reactormonk: we do check exit codes |
21:09:02 | reactormonk | Araq, hm. Can't correlate that back to the files? |
21:09:19 | Araq | reactormonk: well we max() all the return values :P |
21:09:37 | reactormonk | Araq, ... |
21:09:49 | Araq | WickedShell: cannot follow, but in general the compiler is verbose because I like verbose. |
21:10:17 | WickedShell | Araq, http://pastebin.com/vVqJgqAW I was really confused to see it double every letter in compilation terminated |
21:10:27 | WickedShell | (line 151) |
21:10:28 | Araq | I have seen too many programs die silently. |
21:10:49 | WickedShell | I'm good with verbose, but doubled letters was surprising :) |
21:11:27 | * | Matthias247 joined #nim |
21:11:31 | Araq | I've never seen that error message. |
21:11:41 | Araq | it's not something my compiler generates. |
21:12:22 | WickedShell | might be something mingw related? (not sure, I just grabbed the win-x64 installer off the nim site last night) |
21:12:58 | Araq | maybe it's a race condition in the IO subsystem of mingw |
21:14:58 | WickedShell | ah your definetly write its multiple streams going to std out, looks differrent now "ocompimlaptiion telarminated.t" |
21:16:45 | Araq | that's why usually full line buffering is enabled :P |
21:17:01 | Araq | thinking about it ... I think the Nim compiler relies on some undocumented IO behaviour |
21:17:24 | Araq | because only 'echo' is guranteed to properly multi-thread and the compiler doesn't use 'echo' ... |
21:17:37 | Araq | oh well, we'll soon get IO locks. :-) |
21:20:04 | * | benwbooth joined #nim |
21:23:27 | WickedShell | nimble is the package manager, what is the common build tool? (make?) or does the nim community treat it like C/C++ where there are tons of different competing build tools? (part of why I ask is I've been doing a lot of clojure recently where you either use lein or boot) |
21:24:46 | * | Live_Programming joined #nim |
21:26:10 | * | Live_Programming quit (Client Quit) |
21:28:14 | Araq | you can either have a nimble 'task' for it or just do 'nim c project.nim' since Nim always builds complete projects. |
21:28:26 | Araq | we don't need a build tool. |
21:28:59 | Araq | note that once upon a time we had working --symbolfiles resulting in insanely fast incremental builds |
21:29:35 | WickedShell | I'm a bit lazy with the keyboard so having to add the needed flags for some dynlibraries everytime is not exciting... I'll look into arbitrary tasks with nimble then |
21:29:35 | Araq | after 1.0 is out or maybe before that we'll clean up --symbolfiles |
21:30:00 | Araq | well you can simply put these in a nim.cfg file |
21:30:03 | elrood | WickedShell, what happened to cake, and maven, and ant..? ;) |
21:30:04 | * | benwbooth quit (Ping timeout: 252 seconds) |
21:30:37 | * | TheLemonMan quit (Quit: "It's now safe to turn off your computer.") |
21:31:01 | WickedShell | elrood, for clojure? Those are all sub tools that the others lean on :D (I don't think I've actually seen a clojure project based around anything other then lein or boot) now if your talking build tools in general that list just keeps going.... :D |
21:38:37 | * | vendethiel quit (Ping timeout: 250 seconds) |
21:40:16 | renesac_ | finally the queues pull request: https://github.com/nim-lang/Nim/pull/4344 |
21:41:11 | * | PMunch joined #nim |
21:42:45 | cheatfate | renesac_, but why `queue` needs random access? |
21:45:26 | * | vendethiel joined #nim |
21:52:20 | * | benwbooth joined #nim |
21:53:38 | renesac_ | do you want me to look for the irc log with that user? |
22:01:13 | * | GangstaCat quit (Quit: Leaving) |
22:07:23 | * | elrood quit (Quit: Leaving) |
22:09:55 | renesac_ | http://irclogs.nim-lang.org/14-07-2015.html <-- from 18:37 |
22:15:06 | Araq | renesac_: it's fine to implement what random people on IRC requested some time ago, but we also have like 5 trillion open feature requests :P |
22:15:49 | renesac_ | implementing what random people on irk ask is more fun? |
22:15:50 | renesac_ | :P |
22:16:19 | * | heinrich5991 quit (Ping timeout: 250 seconds) |
22:16:51 | cheatfate | renesac_, please make 2 hash tables :) cuckoo and `robin without tumbstone` :) |
22:17:39 | Araq | yeah patch the stdlib, I want robin hood. |
22:18:01 | cheatfate | and cuckoo for benchmarks :) |
22:18:02 | renesac_ | yeah, that would be interesting |
22:18:28 | renesac_ | not sure about the cukoo |
22:18:34 | cheatfate | because there was some issues about lockfree cuckoo |
22:18:36 | renesac_ | maybe you do the cukoo part |
22:18:44 | renesac_ | and I the robin hood part |
22:18:45 | renesac_ | XD |
22:19:02 | cheatfate | ehh... :( |
22:19:26 | Araq | hmmmm Kaley Cuoco hashing |
22:19:39 | * | mnemonikk quit (Ping timeout: 264 seconds) |
22:20:43 | Araq | ^ will win any benchmark |
22:21:14 | renesac_ | no single hash table wiwns all benchmarks |
22:21:15 | renesac_ | XD |
22:21:18 | renesac_ | *wins |
22:21:50 | Araq | Cuoco hashing wins by distracting you from the harsh numbers |
22:22:49 | * | vktec quit (Ping timeout: 250 seconds) |
22:24:46 | Araq | kinda like hypno-toad |
22:25:12 | PMunch | Nice curvy graphs |
22:25:26 | PMunch | performance graphs that is |
22:26:55 | * | mnemonikk joined #nim |
22:26:55 | * | mnemonikk quit (Changing host) |
22:26:55 | * | mnemonikk joined #nim |
22:27:58 | * | PMunch quit (Quit: leaving) |
22:29:49 | * | vktec joined #nim |
22:31:19 | * | heinrich5991 joined #nim |
22:32:39 | * | abbat joined #nim |
22:43:49 | * | Trustable quit (Remote host closed the connection) |
22:50:22 | * | vendethiel quit (Ping timeout: 250 seconds) |
22:51:29 | * | Police_ joined #nim |
22:51:48 | * | Police_ quit (Client Quit) |
22:54:28 | * | vendethiel joined #nim |
22:56:47 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:02:05 | * | Demos quit (Quit: Leaving) |
23:07:33 | * | kier_ joined #nim |
23:07:53 | * | SianaGea1z joined #nim |
23:07:54 | * | cjh`_ joined #nim |
23:08:06 | * | delian66_ joined #nim |
23:08:16 | * | pleiosau1 joined #nim |
23:08:21 | * | devn_ joined #nim |
23:08:25 | * | rektide__ joined #nim |
23:08:29 | * | shodan45 quit (Quit: Konversation terminated!) |
23:08:29 | * | LeNsTR|away joined #nim |
23:10:46 | * | izi joined #nim |
23:11:25 | * | SirCmpwn_ joined #nim |
23:11:32 | * | Araq_ joined #nim |
23:11:32 | * | Amrykid2 joined #nim |
23:12:02 | * | dom96_ joined #nim |
23:12:55 | * | mtj_ quit (*.net *.split) |
23:12:55 | * | devn quit (*.net *.split) |
23:12:55 | * | rektide quit (*.net *.split) |
23:12:55 | * | cjh` quit (*.net *.split) |
23:12:55 | * | tstm quit (*.net *.split) |
23:12:55 | * | nim-buildbot quit (*.net *.split) |
23:12:55 | * | dom96 quit (*.net *.split) |
23:12:56 | * | lenstr quit (*.net *.split) |
23:12:56 | * | cncl quit (*.net *.split) |
23:12:56 | * | SirCmpwn quit (*.net *.split) |
23:12:56 | * | boop quit (*.net *.split) |
23:12:56 | * | kier quit (*.net *.split) |
23:12:56 | * | fold4 quit (*.net *.split) |
23:12:56 | * | delian66 quit (*.net *.split) |
23:12:56 | * | pleiosaur quit (*.net *.split) |
23:12:56 | * | Amrykid quit (*.net *.split) |
23:12:56 | * | Araq quit (*.net *.split) |
23:12:56 | * | SianaGearz quit (*.net *.split) |
23:12:56 | * | CcxCZ quit (*.net *.split) |
23:12:56 | * | low-profile quit (*.net *.split) |
23:12:56 | * | so quit (*.net *.split) |
23:12:59 | * | dom96_ is now known as dom96 |
23:13:33 | * | SirCmpwn_ is now known as SirCmpwn |
23:19:00 | * | boop joined #nim |
23:19:18 | * | tstm joined #nim |
23:19:26 | * | cncl joined #nim |
23:19:28 | * | mtj_ joined #nim |
23:20:14 | * | CcxCZ joined #nim |
23:20:32 | * | fold4 joined #nim |
23:20:55 | * | low-profile joined #nim |
23:27:20 | * | benwbooth quit (Ping timeout: 244 seconds) |
23:28:43 | * | bjz_ quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
23:30:29 | * | benwbooth joined #nim |
23:30:32 | * | akaisora quit (Ping timeout: 272 seconds) |
23:32:05 | * | yglukhov quit (Remote host closed the connection) |
23:35:16 | * | abbat quit (Remote host closed the connection) |
23:45:05 | * | izi quit (Quit: Leaving) |
23:52:04 | * | vktec quit (Ping timeout: 264 seconds) |
23:58:41 | * | vktec joined #nim |