|
01:26
FROGGS__ joined
02:11
colomon joined
02:26
woosley joined
07:33
FROGGS joined
|
|||
| dalek | arVM: f48f2eb | jnthn++ | / (5 files): Implement file watchers. On top of what libuv provides, and hopefully fairly portably. If we want recursive watching and so forth, better to implement that in Perl 6 rather than C. |
10:34 | |
|
10:42
brother joined
10:49
colomon joined
|
|||
| dalek | arVM: 07b36b0 | jnthn++ | src/ (9 files): Add infrastructure for cancellation. |
11:26 | |
| arVM: 61c8cc7 | jnthn++ | src/io/timers.c: Implement cancellation of timers. |
|||
| nwc10 | gosh, the MoarVM build is like the prototype ARM thermal envelope | 12:03 | |
|
12:36
btyler joined
|
|||
| jnthn | nwc10: heh, that reference is obscure enough to leave on wondering if it's a compliment or not :P | 12:38 | |
|
12:38
dalek joined
13:41
LLamaRider joined
13:54
vincent21 joined
|
|||
| nwc10 | I can't actually find a useful "citation", but I'm sure I did recently read the story about how they knew they couldn't afford to make the chip with a ceramic packaging | 14:25 | |
| and they didn't have a way to calculate the power consumption, so they just played it safe | |||
| *very* safe as it turned out | |||
|
14:41
vincent21 joined
|
|||
| timotimo | i still don't get it :) | 15:27 | |
| how does that apply? | |||
|
15:29
colomon joined
|
|||
| FROGGS | I understand it as that the build system is playing safe in a way that there is no guessing, but knowing or dying | 15:33 | |
| timotimo | oh, ok | 15:34 | |
| FROGGS | which would be the Perl 6 approach anyway... | 15:35 | |
|
15:41
bcode joined
|
|||
| nwc10 | no, it was that jnthn wanted the build to be fast | 16:07 | |
| he rather overshot "fast" | |||
| jnthn | nwc10: How fast can you build a MoarVM? :) | 16:11 | |
| nwc10 | real 0m4.968s | 16:12 | |
| user 0m8.739s | |||
| sys 0m3.147s | |||
| jnthn | o.O | ||
| nwc10 | from clean, with ccache | ||
| JimmyZ | time make -j8 | ||
| real 0m10.248s | |||
| user 0m28.807s | |||
| sys 0m10.310s | |||
| nwc10 | "my" machine has 24 cores | ||
| jnthn | core blimey... | ||
| JimmyZ | 1 core here.. | 16:13 | |
| FROGGS | real0m13.927s | ||
| user0m37.892s | |||
| sys0m3.719s | |||
| nwc10 | it's a production-grade server | ||
| FROGGS | 2 cores with HT enabled | ||
| nwc10 | it's not mine. | ||
| FROGGS | and now recompile parrot *g* | 16:14 | |
| </troll> | |||
| nwc10 | not sure how many real, or if it's 12 with HT | ||
| FROGGS | could be two six-cores with ht | ||
| (but could be anything else too) | |||
| nwc10 | looks to be. dmesg suggests that it's one of these: ark.intel.com/products/47926/intel-...-intel-qpi | 16:18 | |
| well, 2 of those | |||
| so, heck, actually it's old. | |||
| FROGGS | we usually have these at work also | 16:19 | |
| nwc10 | equivalent parrot configure, build and install is | 16:22 | |
| real 0m24.775s | |||
| user 2m58.766s | |||
| sys 0m25.024s | |||
| when it works | |||
| (looks like there is an intermittent parallel build failure - presumably a missing dependency | 16:23 | ||
|
16:24
hoelzro joined
|
|||
| FROGGS | I can't even build 6.3 fwiw | 16:25 | |
| nwc10 | I was building "Release 6.3.0 (supported release)" | ||
| moritz | who supports it? :-) | 16:36 | |
| rurban_ | parrot does | 16:53 | |
| what's the problem? | |||
| like: clean make with -j4 fails? | 16:54 | ||
| FROGGS | rurban_: hmmm, I do not get the error anymore, it it failed like "Cannot find auto/expect.pm" during Configure | 16:58 | |
| rurban_ | that's a new probe, hmm. I'll check | 16:59 | |
| FROGGS | but I do not get that anymore for 6.1, 6.2, 6.3 and HEAD | 17:00 | |
| rurban_ | This probe came with 6.2.0 | 17:02 | |
| FROGGS | rurban_: I'd just provide more information when I hit this problem again, okay? | 17:05 | |
| jnthn: is that the right time to make hyperops multi threaded on moar? | 17:15 | ||
| rurban_ | FROGGS: yes, please. sound like an interesting MANIFEST or git pull problem | 17:17 | |
| FROGGS | rurban_: k, will do | ||
|
18:02
btyler joined
18:52
vincent21 left
19:07
brrt joined
|
|||
| brrt | hey, #moarvm, i've just been informed that indeed i'll be building moar's JIT compiler for the summer | 19:09 | |
| :-D | |||
| colomon | \o/ | ||
| GSoC? | |||
| brrt | yes | 19:10 | |
| jnthn | \o/ | ||
| colomon | brrt++ | ||
| brrt | tnx :-) | ||
| jnthn | ++brrt ; | ||
| brrt++ too, for making it this far :) | |||
.oO( I've just been informed I'll be mentoring for GSoC this summer... :D ) |
|||
| FROGGS | \o/ | ||
| brrt++ | |||
| brrt | yes that too :-D | 19:11 | |
| and timotimo++ too | |||
| lizmat | brrt++, jnthn++ | ||
| and timotimo++ something to mention in the weekly :-) | |||
| brrt | so i'm really excited of course | 19:12 | |
| i've been reading up on dynasm | |||
| jnthn | :) | 19:13 | |
| brrt | its basically a): an assembler-in-a-header-file and b): a preprocesor for that assembler | ||
| jnthn | Yeah...afaict it basically turns the thing you write into instructions for the assembler... | 19:14 | |
| brrt | (actually, the assembler is split over both the header file and the preprocesor in a way) | ||
| and i think its probably best to focus on x64 | 19:15 | ||
| FROGGS | that would be state of the art, yes | 19:16 | |
| jnthn | Yes, that's my preferred focus too | 19:18 | |
| brrt | yes, and also - many more registers, 64 bit registers, etc | ||
| jnthn | aye ;) | 19:19 | |
| brrt | and excellent documentation, i might add | 19:20 | |
| (and dynasm fits well into a makefile-based-build) | 19:21 | ||
| moritz | brrt: have you seen that blog post where a brainfuck JIT compiler is built? | 19:22 | |
| timotimo | oh, it is monday! | ||
| i totally forgot! | |||
| moritz | blog.reverberate.org/2012/12/hello...-jits.html # this one | ||
| oh, and brrt++ jnthn++ timotimo++ | 19:23 | ||
| timotimo | brrt++ jnthn++ :) | ||
| brrt | yes i did moritz :-) it was on hacker news recently? i've the source code checked out | 19:24 | |
| jnthn | timotimo: Well, doing it now menas it's after my brunch merge | ||
| uh, branch | |||
| timotimo | the asyncops branch? | 19:25 | |
| jnthn | yeah | ||
| well, async in Rakudo | |||
| moritz | brrt: dunno, I remember it from when it came out, it was on HN and reddit then | 19:26 | |
|
19:28
zakharyas joined
|
|||
| brrt | its a good article, if perhaps the only good documentation of dynasm | 19:29 | |
| timotimo | we only have async I/O for sockets thus far? | 19:31 | |
| jnthn | timotimo: Yeah, not files yet | 19:34 | |
| timotimo: Though also there is timers, file watchers, and signals. | |||
| timotimo: So you can winch up your code... | |||
| timotimo | yay :) | ||
| i must find another excuse to continue procrastinating that project :| | |||
| jnthn | Damn, you were gonna be the way I knew if the signals thing worked :P | 19:36 | |
| timotimo | i could just as well build a few simple test applications first :) | ||
| i'll probably have something soon enough that we'll get it tested a bit for the next release :P | |||
| jnthn | Also nice that on www.google-melange.com/gsoc/projec...e/gsoc2014 I see the LWP one too :) | 19:37 | |
| timotimo | yes! \o/ | ||
| jnthn | Hopefully we can get async variants of those in there somewhere too :) | ||
| timotimo | those things are public, so i'm free to write about them on my blog? | 19:38 | |
| i mean the gsoc applications being accepted | 19:39 | ||
| brrt | moritz++ , FROGGS++ for the LWP project | ||
| jnthn | yes, page just linked to is public | ||
| timotimo | great! | ||
| FROGGS | I don't see it yet :/ | ||
| ahh, now I do :o) | 19:40 | ||
| timotimo | i'll also link to the gists for crappy webserver and crappy LWP if that's all right | ||
| jnthn | But they're SO crappy! | 19:41 | |
| Make sure to say so :) | |||
| timotimo | i will | ||
| where should i link for an example on timers? roast perhaps? | 19:43 | ||
| jnthn | Dunno | 19:44 | |
| brrt | i see parrot indirectly got a student as well | 19:45 | |
| good luck for them | |||
| timotimo | indirectly? | 19:46 | |
| jnthn | timotimo: I dunno, just show Supply.merge(Supply.interval(2).map({ 'tick' }), Supply.interval(2, 1).map({ 'tock' })).tap(&say); sleep 10; :) | ||
| timotimo builds a fresh rakudo | 19:47 | ||
| moritz | m: Supply.merge(Supply.interval(2).map({ 'tick' }), Supply.interval(2, 1).map({ 'tock' })).tap(&say); sleep 10; | 19:48 | |
| camelia | rakudo-moar 544ed9: OUTPUTĀ«(signal )Unhandled exception in code scheduled on thread 140555843340032ā¤Cannot call method 'more' on a null object⤠in block at src/gen/m-CORE.setting:18947⤠in block at src/gen/m-CORE.setting:18494⤠in method more at src/gen/m-CORE.setting:1ā¦Ā» | ||
| timotimo | :D | ||
| brrt | brrt-to-the-future.blogspot.nl/ :-) | ||
| jnthn | 544ed9? That's no HEAD... | ||
| moritz | last build died with | 19:50 | |
| Stage jast : Method 'jast' not found for invocant of class 'NQPMu' in (gen/jvm/stage2/QAST.nqp:3813) | |||
| jnthn | moritz: oh, and all 3 backends have to build? | ||
| I think FROGGS++ fixed that but I guess we need to bump NQP_REVISION? | 19:51 | ||
| moritz | jnthn: yes | ||
| FROGGS | t;dalek> rakudo/nom: e974894 | (Tobias Leich)++ | tools/build/NQP_REVISION: bump nqp rev for unbreak of pointies in if |
||
| moritz | I guess it didn't try to rebuild after that | 19:52 | |
| aye, it rebuilds at 8 minutes past the full hour | |||
| timotimo | supplies based on timers (so Supply.interval) has been supported on JVM for a bit longer now, right? | 20:04 | |
| TimToady | does the sampler pick the first event in every interval, or a randome event in every interval? | 20:05 | |
| *random | |||
| seems like the first event is going to be subject to timing coincidences if production is cyclic | |||
| jnthn | TimToady: yeah... "last one" is another option. | 20:06 | |
| TimToady | that's also problematic | ||
| jnthn | Yeah | ||
| First one is easiest to implement | |||
| TimToady | how 'bout replace the last one based on decreasing probablility | ||
| jnthn | oh wait, we meant opposite things by last :) | ||
| Hm :) | |||
| Yeah, that's not bad. | 20:07 | ||
| TimToady | I think there's even an RC entry for that algo :) | ||
| jnthn | TimToady: www.introtorx.com/content/v1.0.1062...tml#Sample is how they have it in Rx, fwiw | 20:08 | |
| Not saying we have to go that way, just another data point | |||
| latest can make sense if your data is such that newer is always better, but you want to throttle the rate it comes at you. | 20:09 | ||
| lizmat | are we speccing Supply.sample here? | 20:11 | |
| with e.g. named param :last | |||
| TimToady | discussing semantics, anyway | ||
| lizmat | :first | ||
| :any | |||
| ? | |||
| each of this accepting a number | 20:12 | ||
| jnthn | I can see use cases either way, so maybe we do want to support more than one of them. | ||
| a number? :) | |||
| TimToady | 5 last values? | ||
| jnthn | Thing is, the adverbs seem mutually exclusive... | 20:13 | |
| TimToady | so maybe just a different method name | ||
| jnthn | yeah | ||
| TimToady | .sample-recent vs .sample-random | ||
| timotimo | i must have been asleep for most of last week ... i don't really recall many things i could report except timers, async i/o, many supply methods (lizmat++) and the release | 20:14 | |
| lizmat | timotimo: Mouq's 17f4ee310239e1dd3d84c2205e479fdce8a7b966 | 20:15 | |
| timotimo | oooh! good one! | 20:16 | |
| lizmat | lue's e63497d3e6efe4da929048c2a277cda70c12643d | ||
| jnthn | Various assorted Rakudo threading bugs got fixed along the way too | ||
| lizmat | Nami-Doc's e5725364c4479b6c8d0c3149e33350ca9d1a221f | 20:17 | |
| Donald Hunter's 626fd391b8c3d820d2509ab560687cea1c81a10f | 20:18 | ||
| lizmat shuts up :-) | |||
| dalek | arVM: 4a8dac6 | (Tobias Leich)++ | src/io/ (3 files): stat the target of a symlink when we query for filesize This will also follow symlinks after symlinks to get to an actual file. |
20:27 | |
| timotimo | brrt: please add another s to my last name on your first blog post :) | 20:31 | |
| brrt | sure :-) | 20:32 | |
| Paulssen, is it? | 20:33 | ||
| timotimo | yup | 20:34 | |
| brrt | changed it :-) | ||
| i'll try to be at the dutch perl workshop this friday, but i can't promise anything | 20:39 | ||
| jnthn | brrt: OK. I'll see you there, if you can :) | 20:40 | |
| brrt | yes, if i can't be there, maybe we could meetup later that day? | ||
| utrecht is only 2 hours' train away from me | |||
| jnthn | I'm staying that evening in Utrecht, I belive. | ||
| And have nothing to do but hang out with Perl people :) | 20:41 | ||
| So should work. | |||
| I dunno exactly what the post-conf plans are but we can figure a way to meet up. | |||
| brrt | sure | ||
| i'm going to sleep in a few minutes, so i'll speak to you tomorrow :-) | |||
| bye o/ | 20:42 | ||
|
20:42
brrt left
|
|||
| jnthn | o/ | 20:45 | |
|
20:51
btyler joined
|
|||
| dalek | arVM: a75ad37 | (Tobias Leich)++ | src/io/fileops.c: return a value in all cases in follow_symlinks |
21:42 | |
| arVM: 73f8fe1 | (Tobias Leich)++ | src/io/ (3 files): rename follow_symlinks to make clear it stats |
21:48 | ||