01:36 jnap1 left 02:02 btyler joined 03:17 woosley joined 04:00 bonsaikitten joined
dalek arVM: e958c35 | (Andrew Egeler)++ | src/core/interp.c:
Trigger repossession on OP(push_o)
06:51
arVM: f805d65 | (Andrew Egeler)++ | src/core/interp.c:
Trigger repossession on OP(push_*)
arVM: b82bf10 | jonathan++ | src/core/interp.c:
Merge pull request #92 from retupmoca/master

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