Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2014-04-15

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
01:36 jnap1 left #moarvm
02:02 btyler joined #moarvm
03:17 woosley joined #moarvm
04:00 bonsaikitten joined #moarvm
06:51 dalek MoarVM: e958c35 | (Andrew Egeler)++ | src/core/interp.c:
06:51 dalek MoarVM: Trigger repossession on OP(push_o)
06:51 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e958c3512f
06:51 dalek MoarVM: f805d65 | (Andrew Egeler)++ | src/core/interp.c:
06:51 dalek MoarVM: Trigger repossession on OP(push_*)
06:51 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f805d656d5
06:51 dalek MoarVM: b82bf10 | jonathan++ | src/core/interp.c:
06:51 dalek MoarVM: Merge pull request #92 from retupmoca/master
06:51 dalek MoarVM:
06:51 dalek MoarVM: Trigger repossession on OP(push_*)
06:51 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b82bf107bd
06:51 jnthn I love the smell of pull requests in a morning...
06:59 tokuhirom joined #moarvm
07:10 zakharyas joined #moarvm
07:18 FROGGS joined #moarvm
07:32 tadzik :D
07:35 lizmat is it time for a version bump?
09:53 FROGGS can I disable spesh for a single run of perl6-m?
09:54 nwc10 FROGGS: lastlog suggests MVM_SPESH_DISABLE=1 in the environment
09:54 FROGGS ahh, thank you
09:54 FROGGS okay, than this is not due to spesh: Lexical with name '$_' does not exist in this frame
09:55 FROGGS his happens when running the benchmark game thingy
10:12 donaldh joined #moarvm
10:16 donaldh joined #moarvm
10:36 FROGGS I see, there is a problem when there is a C style for loop in another for loop...
10:36 FROGGS I know that the scope of the to be declared loop variable is messy
11:20 LLamaRider joined #moarvm
11:21 jnthn FROGGS: you're more likely hitting recent Rakudo optimizer work
11:23 jnthn FROGGS: Do you have a golfed example?
11:24 jnthn FROGGS: Also is this in Perl 6 code?
11:24 jnthn Or Perl 5 code?
11:24 jnthn If you try and feed Perl 5 code's ASTs through Perl6::Optimizer you may cause problems.
11:36 lizmat shouldn't Perl6::Optimizer limit itself to AST's generated by Perl 6 ?
11:37 lizmat I mean, AST's could be generated by anything, no?
11:38 jnthn lizmat: It's not Perl6::Optimizer's fault.
11:38 jnthn lizmat: Other languages shouldn't put it in their pipeline :)
11:39 jnthn Thing is that v5 can embed its AST in a Perl 6 one.
11:39 jnthn So then things get...interesting.
11:39 lizmat but could not any DSL do that?
11:40 jnthn Yeah, if it's going to produce QAST rathern than work in terms of Perl 6 quasis.
11:40 jnthn In that case probably we need a way to convey to the optimizer about what is going on.
11:45 cognominal joined #moarvm
11:46 lizmat fortunately, it's Trees, so one flag at the top of a tree should be enough?
11:47 lizmat but the downside is of course, you would need to check it on each  :-(
11:48 FROGGS jnthn: P5 code: perl6-m -e 'use v5; for my $i (0..5) { for (my $j;;) { say 1 } }'
11:50 cognominal joined #moarvm
11:54 moritz lizmat: well, if the optimizer doesn't want to check it every time, it can down-propagate the flag on first traversal
11:56 FROGGS hmmm, the optimizer just turns some calls to callstatic
11:56 FROGGS but I even get the error when the optimizer is turned off
12:02 FROGGS the bt shows:   at src/gen/m-BOOTSTRAP.nqp:514  (/home/froggs/dev/nqp/install/languages/nqp/lib/Perl6/BOOTSTRAP.moarvm:handle_optional:12)
12:02 FROGGS from src/gen/m-BOOTSTRAP.nqp:709  (/home/froggs/dev/nqp/install/languages/nqp/lib/Perl6/BOOTSTRAP.moarvm:bind:479)
12:02 FROGGS from src/gen/m-BOOTSTRAP.nqp:817  (/home/froggs/dev/nqp/install/languages/nqp/lib/Perl6/BOOTSTRAP.moarvm:bind_sig:34)
12:13 cognominal joined #moarvm
12:14 FROGGS okay, issue is fixed
12:14 FROGGS (was a problem in v5's grammar+actions for "for" loops)
12:17 lizmat FROGGS++
12:19 FROGGS perl6-m --ll-exception n-body.pl 5
12:19 FROGGS Error while compiling op bind: QAST::Block with cuid cuid_29_1397564332.34772 has not appeared
12:19 FROGGS >.O
12:26 FROGGS okay, that wants fixing now:
12:26 FROGGS ./p5 '$s = "foo"; $s =~ s/(\w+)/length($1)/e; say $s'
12:26 FROGGS Perl5: 3␤
12:26 FROGGS v5:    length(foo)␤
12:27 FROGGS (where "now" is more likely tonight)
12:36 cognominal joined #moarvm
13:20 salv0 joined #moarvm
13:51 btyler joined #moarvm
14:19 jnap joined #moarvm
14:25 donaldh joined #moarvm
15:21 cognominal joined #moarvm
15:36 zakharyas joined #moarvm
15:41 jnthn joined #moarvm
16:00 cxreg joined #moarvm
16:05 jnap1 joined #moarvm
16:12 FROGGS joined #moarvm
17:42 timotimo i'm kinda puzzled why a 0 value seems to end up in the slot for a named
17:43 timotimo since it happens even with spesh turned off
18:17 timotimo oh, that was simple
18:17 timotimo getting farther, but now i'm hitting something where no callsites with nameds get interned and it still crashes when spesh is turned on
18:19 dalek MoarVM/named_to_positional: 53ec87e | (Timo Paulssen)++ | src/core/callsite.c:
18:19 dalek MoarVM/named_to_positional: consider callsites with nameds for interning
18:19 dalek MoarVM/named_to_positional: review: https://github.com/MoarVM/MoarVM/commit/53ec87e17a
18:21 timotimo this way i at least still get through a rakudo compile with spesh turned off
18:27 timotimo This type does not support positional operations - getting this for $!states[$id] := []; in QRegex.nqp confuses me
18:28 timotimo the exact bytecode it seems to happen in is the bindpos that'd put the list in there
18:28 timotimo given that the $!states has just been created (as this is the addstate that is called from new() directly after bless()) it confuses me greatly that this would break due to callsite interning for nameds
18:29 timotimo neither new nor addstate take any arguments whatsoever
18:55 woolfy joined #moarvm
19:51 jnthn omg...De Molen's Rasputin Russian Imperial Stout is awesome!
19:51 jnthn netherlands++
20:11 jnthn timotimo: Note that new and addstate take one arg - the invocant.
20:14 timotimo oh
20:14 timotimo but not nameds, right?
20:16 jnthn well, the default new method may
20:17 jnthn But if it declares its own, then in NQP there's no implicit *%_
21:11 btyler joined #moarvm
22:02 japhb joined #moarvm
22:30 timotimo removing the mhh
22:56 colomon joined #moarvm
23:13 colomon joined #moarvm
23:29 gjb_ joined #moarvm
23:36 btyler joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary