sergot Hey! 13:51
I have been working on Bug #121530 rt.perl.org/Public/Bug/Display.html?id=121530
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121530
sergot I figured out that: 13:52
both phaser are added correctly
paste.ubuntu.com/7497002/
It starts the first one and exit on die.
so I did this: (FROGGS++)
- :moar(QAST::Op.new( :op('null') )) 13:53
+ :moar(QAST::Op.new( :op('resume'), QAST::Op.new( :op('exception') ) ))
rakudo/src/Perl6/Actions.nqp:1537
So we resume on the exception, and it prints 21, as we want.
FROGGS still not 100% correct :o)
sergot that's right 13:54
so...
It doesn't work properly.
It actually doesn't die at die(). It goes further:
$ perl6 -e 'my $s; try { LEAVE { $s ~= 1 }; LEAVE { $s ~= 2; die "foo"; say "yyyy" } }; say $s;'
yyyy
FROGGS we still need to exit from the phaser where the exception happens
sergot 2
21
not '2'
Could you give me some advices?
FROGGS yeah, we should not print 'yyyy' for example 13:55
sergot What should I do now? :)
true :)
FROGGS I'm not sure
timotimo it's very nice that you're tackling something so tricky 13:57
sergot FROGGS++ helped me a lot 13:58
any ideas? :) 14:47
[Coke] I am running a version of moar that if you run this command in the REPL about a dozen times, it crashes. 15:43
code: (9 X- 1 X- 2,3,6).sort.uniq
crash: ===SORRY!=== 15:44
Spesh: failed to fix up handlers (-1, 110, 110)
version: 2014.05-37-g04fe6d7
FROGGS [Coke]: same here 15:46
[Coke] the code run seems to not matter so much 15:50
m: (1080 X/ 2,3,4,5 X/ 4,5 X/ 2,3,4,5).sort.uniq.grep({$_.narrow ~~ Int}) 15:51
camelia ( no output )
[Coke] m: (1080 X/ 2,3,4,5 X/ 4,5 X/ 2,3,4,5).sort.uniq.grep({$_.narrow ~~ Int}).saty
camelia rakudo-moar 851811: OUTPUT«No such method 'saty' for invocant of type 'List'␤ in block at /tmp/HMZGNlkbfF:1␤␤»
[Coke] m: (1080 X/ 2,3,4,5 X/ 4,5 X/ 2,3,4,5).sort.uniq.grep({$_.narrow ~~ Int}).say
camelia rakudo-moar 851811: OUTPUT«18 24 27 30 36 45 54␤»
[Coke] m: (1080 X/ 2,3,4,5 X/ 4,5 X/ 2,3,4,5).sort.uniq.grep(* ~~ Int).say
camelia rakudo-moar 851811: OUTPUT«␤» 15:52
[Coke] ^^ why aren't those identical? (last 2)
m: (1080 X/ 2,3,4,5 X/ 4,5 X/ 2,3,4,5).sort.uniq.grep(*.narrow ~~ Int).say 15:55
camelia rakudo-moar 851811: OUTPUT«␤»
[Coke] Sorry, "the last two with .narrow" :)