00:16:25 | * | darkf joined #nimrod |
00:22:38 | * | error424 joined #nimrod |
00:23:22 | * | shevy quit (Ping timeout: 264 seconds) |
00:36:44 | * | shevy joined #nimrod |
00:38:45 | Araq | hi error424 welcome |
00:39:11 | * | filwit quit (Quit: Leaving) |
00:43:00 | error424 | Howdy, Araq |
00:44:05 | * | willwillson quit (Ping timeout: 255 seconds) |
00:51:22 | Araq | you're too late, I need to sleep now. good night |
01:05:17 | bjz | Skrylar: moop |
01:39:27 | * | saml_ joined #nimrod |
01:40:50 | * | filwit joined #nimrod |
01:41:53 | filwit | Cool mobile irc works |
01:42:15 | filwit | Bbl though |
01:42:19 | * | filwit quit (Client Quit) |
02:46:30 | * | EXetoC quit (Quit: WeeChat 0.4.3) |
02:48:19 | * | guest749 joined #nimrod |
02:49:07 | * | guest749 quit (Remote host closed the connection) |
03:23:07 | * | q66_ quit (Quit: Leaving) |
04:22:47 | * | saml_ quit (Ping timeout: 255 seconds) |
04:30:00 | Varriount | dom96: Ping |
04:32:36 | Varriount | dom96: Currently the only thing left to do is some bug fixing and optimization. |
04:33:29 | Varriount | dom96: There's this wierd bug that shows up if I have a batch script repeatedly move a tracked file between two locations - the overlapped structure gets freed before it's supposed to |
04:34:08 | Varriount | I can't seem to figure out why - the GC isn't throwing any assertion errors, and it doesn't matter if I increment the refcount or not. |
04:34:20 | Varriount | *increment the overlapped structure's refcount or not |
04:43:12 | * | Demos__ quit (Quit: Leaving) |
04:52:13 | * | BlameStross1 left #nimrod (#nimrod) |
05:02:25 | * | flaviu quit (Ping timeout: 272 seconds) |
07:09:15 | * | error424 left #nimrod (#nimrod) |
07:43:17 | * | kunev joined #nimrod |
07:46:49 | * | gkoller joined #nimrod |
07:54:02 | * | io2 joined #nimrod |
08:04:02 | EastByte_ | Hello there |
08:04:15 | EastByte_ | I have a small question regarding parsing/writen binary data in Nimrod |
08:04:38 | EastByte_ | Do I have to use unsafe operations (like addr and typecasting) when reading out data using pure objects? |
08:05:12 | * | johnsoft quit (Ping timeout: 245 seconds) |
08:05:51 | * | johnsoft joined #nimrod |
08:30:00 | * | kunev quit (Ping timeout: 250 seconds) |
08:34:45 | * | gkoller quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
09:02:33 | Araq | EastByte_: yeah, that's usually the way to do it |
09:03:32 | Araq | depending on what you do, you can keep the unsafety to a minimum though (create a proc that does the typecasting and use that) |
09:05:37 | Araq | Varriount: can't you just alloc0() it and dealloc it when windows tells you it is safe to do so? |
09:06:25 | EastByte_ | okay thanks |
09:24:33 | * | kunev joined #nimrod |
10:14:58 | dom96 | morning |
10:39:50 | * | willwillson joined #nimrod |
11:03:32 | * | io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist) |
11:34:41 | dom96 | Araq: I think that making ``cb`` in asyncdispatch gcsafe is incorrect because in that case all async procs must be gcsafe. |
11:39:20 | * | io2 joined #nimrod |
11:41:47 | * | flaviu joined #nimrod |
11:46:41 | * | ARCADIVS joined #nimrod |
11:55:09 | * | darkf quit (Ping timeout: 240 seconds) |
11:56:56 | * | darkf joined #nimrod |
12:05:18 | * | zahary quit (Ping timeout: 246 seconds) |
12:45:14 | * | darkf quit (Quit: Leaving) |
12:52:49 | Araq | dom96: I think it is correct because otherwise gcsafe is unsound |
12:53:06 | Araq | yes, all async procs must be gcsafe |
12:53:20 | dom96 | what if I want to use global vars in my async procs? |
12:54:02 | * | kunev quit (Quit: leaving) |
12:54:35 | Araq | well you can't have your cake and eat it too |
12:55:22 | * | q66 joined #nimrod |
12:56:30 | Araq | soon every program will be --threads:on anyway |
12:58:48 | dom96 | well then the user should get to choose if their async proc is gcsafe I think |
13:00:04 | Araq | you can easily mark the global .threadvar |
13:00:11 | Araq | then the access is gcsafe |
13:00:23 | Araq | and with --threads:off a .threadvar is simply a global variable |
13:00:36 | Araq | so the user can choose |
13:01:09 | Araq | I need to go now, see you later |
13:01:13 | dom96 | you may as well just make everything gcsafe then |
13:04:33 | * | zahary joined #nimrod |
13:12:08 | * | foooox joined #nimrod |
13:22:29 | * | gkoller joined #nimrod |
13:31:50 | * | gkoller quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
13:58:34 | dom96 | hello foooox |
14:28:16 | Araq | dom96: I already told you it's this way because the compiler is not gcsafe at all and this way it is consistent with the rest of the effect system. |
14:38:45 | dom96 | Araq: Maybe it would be a good idea to break consistency then hrm? |
14:41:41 | Araq | flaviu disagrees |
14:42:10 | flaviu | hmm? |
14:43:19 | flaviu | Sorry, I don't understand what's going on, I haven't messed with async, gcsafe, or any of that stuff |
14:45:11 | dom96 | brb |
14:54:10 | * | ARCADIVS quit (Quit: WeeChat 0.4.3) |
15:01:55 | dom96 | back |
15:02:05 | dom96 | Araq: it seems flaviu doesn't in fact disagree |
15:02:32 | flaviu | No, I just have no idea what is happening |
15:02:37 | foooox | me either |
15:03:45 | flaviu | This bikeshed would require too much work for me to learn enough to argue |
15:05:16 | Araq | flaviu is always against breaking consistency |
15:05:52 | OrionPK | so for some reason my mac is randomly not finding babel packages anymore :\ |
15:06:13 | OrionPK | "cannot open ..." |
15:06:28 | flaviu | I'm for whatever idea that takes the least words to explain and is a reasonable 95% solution |
15:08:25 | dom96 | Has the compiler stopped mentioning what paths it adds through --babelPath? |
15:09:00 | Araq | well consistency is a nice thing and we'll have this discussion with "locks: nil" too |
15:09:30 | dom96 | Araq: Is it really necessary to have users who are not interested in multithreading caring about gc safety? |
15:10:36 | Araq | well we can make --threads:on imply --threadAnalysis:on and turn it off otherwise |
15:10:44 | dom96 | OrionPK: I was going to suggest taking a look at the compile output because it lists the packages that it adds to its path, but I don't see that in the output anymore... |
15:10:49 | Araq | but I don't think that's a good idea |
15:11:26 | Araq | libraries will be written with --threads:off and then can't be used for when you use --threads:on |
15:11:36 | Araq | bbl |
15:11:59 | OrionPK | dom96 hmm |
15:12:20 | dom96 | Araq: I still don't get it. The compiler can tell if something is gc safe or not, so let it infer that. |
15:12:52 | dom96 | oh |
15:12:55 | flaviu | wow, impressive. The nimrod javascript backend works better than emscripen |
15:13:02 | dom96 | I just realised what the problem is. |
15:13:05 | * | noam_ joined #nimrod |
15:13:27 | dom96 | The compiler cannot infer this information for closure types. |
15:13:34 | * | noam quit (Ping timeout: 240 seconds) |
15:13:43 | * | noam_ is now known as noam |
15:14:14 | dom96 | But now I don't understand why you want asyncdispatch's cb to be marked as gcsafe. |
15:14:25 | OrionPK | dom96 i have babel/bin in the path, and i havent modified the nimrod cfg or anything.. |
15:14:48 | dom96 | OrionPK: Verify that the config contains --babelPath:~/.babel/pkgs |
15:14:49 | OrionPK | babel works fine from the command line |
15:14:51 | dom96 | or something like that |
15:15:01 | dom96 | and ensure that the package you are trying to import exists |
15:15:17 | OrionPK | @if nimbabel: babelpath="$home/.babel/pkgs/" @end |
15:15:33 | OrionPK | yeah it exists |
15:15:40 | OrionPK | I tried two different ones |
15:15:40 | dom96 | maybe nimbabel isn't defined? |
15:15:49 | dom96 | remove that @if |
15:15:52 | OrionPK | how does that get defined |
15:16:12 | OrionPK | yeah that did it |
15:16:19 | OrionPK | it finds it w/o the @if |
15:16:20 | dom96 | That was some workaround for something some time ago. |
15:16:34 | dom96 | I'm guessing the recent defined/declared changes broke that. |
15:16:43 | dom96 | OrionPK: Make an issue on github please. |
15:16:53 | OrionPK | for nimrod or for babel? |
15:16:54 | dom96 | I'm not sure whether we can simply remove that @if. |
15:16:56 | dom96 | Nimrod |
15:16:57 | flaviu | Wait, no, it looks like casts don't work |
15:17:39 | dom96 | flaviu: fix it. The JS backend is simple and a great way to get acquainted with the compiler internals. |
15:18:17 | flaviu | dom96: I've messed enough with floats and ints in javascript |
15:18:30 | flaviu | I just want to get stuff done by this point |
15:18:50 | dom96 | flaviu: what are you making? |
15:18:57 | OrionPK | dom96 well looks like i finally have to upgrade to the async jester stuff ;) |
15:19:08 | flaviu | The whole reason I'm not using javascript here is because apparently x+1-1 != x in javascript |
15:19:08 | dom96 | OrionPK: Why's that? |
15:19:12 | OrionPK | well i suppose i could get an older version heh |
15:19:43 | dom96 | Would be nice if you could switch to it. I need more testers. |
15:19:48 | OrionPK | i just re-installed all my babel packages (because I thought that might fix the import issue that I just submitted a bug for) |
15:19:50 | OrionPK | I know |
15:20:00 | dom96 | http://forum.nimrod-lang.org:8080/ is still running so it's stable for now heh |
15:20:03 | OrionPK | I just dont have time right now, I'll upgrade though |
15:20:13 | OrionPK | maybe some time this week |
15:20:17 | dom96 | cool. |
15:20:39 | dom96 | You can install an older version of jester by executing: babel install jester@#commit |
15:20:51 | OrionPK | do you have scgi support in still? |
15:20:54 | OrionPK | yeah I know |
15:21:00 | dom96 | not yet |
15:21:02 | OrionPK | but I'll upgrade to async |
15:21:15 | dom96 | asynchttpserver is better anyway :P |
15:21:36 | OrionPK | heh, well when i have some time i'll look at it |
15:21:46 | dom96 | Alright, awesome. |
15:22:00 | dom96 | I'm currently working on rewriting the rest of the modules to work with the new async stuff. |
15:22:30 | dom96 | Right now it's the irc module which you likely need. |
15:22:40 | OrionPK | yeah that'd be nice |
15:22:58 | dom96 | Maybe this will fix reconnecting as a side effect. |
15:23:06 | OrionPK | hopefully |
15:23:32 | OrionPK | someone should take websockets and async that ;) |
15:24:08 | OrionPK | im going to have some time open up the beginning of next month |
15:24:56 | dom96 | Same here :) |
15:26:02 | * | Demos joined #nimrod |
15:42:27 | * | gkoller joined #nimrod |
15:43:55 | * | gkoller_ joined #nimrod |
15:44:37 | * | gkoller quit (Client Quit) |
15:44:43 | * | gkoller_ quit (Client Quit) |
15:44:57 | * | gkoller joined #nimrod |
15:46:19 | * | gkoller_ joined #nimrod |
15:47:12 | * | bogen joined #nimrod |
15:48:16 | * | gkoller quit (Client Quit) |
15:48:36 | * | gkoller_ quit (Client Quit) |
15:49:55 | * | gkoller joined #nimrod |
15:51:57 | * | gkoller quit (Client Quit) |
15:52:14 | * | gkoller joined #nimrod |
15:57:00 | * | gkoller quit (Read error: Connection reset by peer) |
15:57:22 | * | gkoller joined #nimrod |
16:08:58 | OrionPK | where's fowl been? |
16:16:11 | * | Boscop_ joined #nimrod |
16:18:20 | * | Boscop quit (Ping timeout: 250 seconds) |
16:26:30 | * | kunev joined #nimrod |
16:28:34 | * | skyfex quit (Quit: Computer has gone to sleep.) |
16:29:00 | * | Boscop_ quit (Read error: Connection reset by peer) |
16:29:06 | * | skyfex joined #nimrod |
16:29:58 | * | Boscop_ joined #nimrod |
16:41:18 | Varriount | Araq: If asyncdispatch did that, I wouldn't be able to use the OL structure at all. |
16:45:40 | * | foooox quit (Ping timeout: 246 seconds) |
17:03:24 | * | Trixar_za quit (Ping timeout: 250 seconds) |
17:04:12 | * | ome joined #nimrod |
17:05:27 | Varriount | Araq: If I setLen() a string whose length was previously 32 to 16, is the now unused space 'free' to be used for other things? |
17:23:20 | dom96 | Varriount: Is your code up anywhere? |
17:30:10 | * | shevy left #nimrod ("I'll be back ... maybe") |
17:31:49 | Varriount | dom96: I'm about to push it. I need to send a patch to asyncdispatch - my code uses some private stuff that I had to make public |
17:39:45 | dom96 | Varriount: ok |
17:58:33 | * | kunev quit (Ping timeout: 240 seconds) |
18:05:12 | * | kunev joined #nimrod |
18:14:37 | * | gsingh93 joined #nimrod |
18:17:33 | NimBot | nimrod-code/packages master 9ad72da Dominik Picheta [+0 ±1 -0]: Add IRC package. |
18:19:35 | NimBot | Araq/Nimrod devel b1b681a Dominik Picheta [+0 ±0 -1]: Remove irc module. Ref #1486. |
18:19:35 | NimBot | Araq/Nimrod devel 92828fc Dominik Picheta [+0 ±1 -0]: Merge branch 'devel' of github.com:Araq/Nimrod into devel |
18:19:35 | NimBot | Araq/Nimrod devel aa73288 Dominik Picheta [+0 ±1 -0]: Export `==` from net module for TPort. |
18:48:55 | * | ARCADIVS joined #nimrod |
19:23:49 | * | Varriount quit (Read error: Connection reset by peer) |
19:24:24 | * | q66 quit (Remote host closed the connection) |
19:25:14 | * | q66 joined #nimrod |
19:25:44 | NimBot | Araq/Nimrod devel 710cbe3 Araq [+0 ±1 -0]: fixes #1492 |
19:25:44 | NimBot | Araq/Nimrod devel e662013 Araq [+1 ±6 -1]: Merge branch 'devel' of https://github.com/Araq/Nimrod into devel |
19:27:25 | dom96 | Araq: sup |
19:30:50 | * | q66 quit (Quit: Leaving) |
19:33:10 | Araq | I fixed nim |
19:37:28 | * | q66 joined #nimrod |
19:37:36 | Araq | brb |
19:43:53 | * | skyfex quit (Quit: Computer has gone to sleep.) |
19:44:28 | * | skyfex joined #nimrod |
20:05:58 | * | untitaker quit (Ping timeout: 264 seconds) |
20:07:34 | * | ome quit (Quit: Connection closed for inactivity) |
20:11:17 | * | untitaker joined #nimrod |
20:12:20 | * | kunev quit (Ping timeout: 250 seconds) |
20:18:23 | * | ARCADIVS quit (Ping timeout: 240 seconds) |
20:31:00 | * | adoniscik joined #nimrod |
20:31:07 | adoniscik | does nimrod have "var" iterators? |
20:31:29 | dom96 | not really sure what those are, can you elaborate? |
20:32:08 | adoniscik | iterators setting which allow you to modify the referred variable |
20:32:26 | adoniscik | var x in foo ... x = f(x) etc. |
20:32:52 | dom96 | oh, like: iterator foo(x: var int): string = x = 42 ? |
20:34:00 | adoniscik | yes, but for sequence types, otherwise you would not be using an iterator. like foo = map(bar, foo). |
20:34:00 | dom96 | that might work |
20:35:37 | dom96 | what's your use case? |
20:35:41 | dom96 | I'm still not sure what you mean. |
20:35:51 | adoniscik | I currently iterator over the index (for i in x.low..high ; x[i] = foo(x[i]) ). I was wondering if there was a more elegant way |
20:36:31 | dom96 | oh, you can return a 'var T' |
20:36:39 | dom96 | or rather |
20:36:45 | dom96 | yield a 'var T' from the iterator is what I mean |
20:37:05 | * | io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist) |
20:37:25 | dom96 | or maybe that's not supported |
20:38:22 | * | Matthias247 joined #nimrod |
20:53:12 | * | gkoller quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
21:03:25 | * | io2 joined #nimrod |
21:17:09 | Araq | back |
21:17:26 | Araq | yielding 'var T' from an iterator is supported |
21:55:49 | * | Matthias247 quit (Read error: Connection reset by peer) |
22:11:58 | * | mwbrown joined #nimrod |
22:12:34 | * | adoniscik quit (Ping timeout: 264 seconds) |
22:15:19 | * | Jesin quit (Quit: Leaving) |
22:20:48 | * | mwbrown quit (Ping timeout: 260 seconds) |
22:27:17 | * | Skrylar quit () |
22:29:57 | * | Skrylar joined #nimrod |
23:15:06 | * | filwit joined #nimrod |
23:19:40 | * | io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist) |
23:20:59 | * | darkf joined #nimrod |
23:29:43 | * | gsingh93 quit (Quit: Connection closed for inactivity) |
23:44:51 | * | gsingh93 joined #nimrod |