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
|