Hmm, it looks like that was not all -- or there is a new problem. $ perl6-m -e 'for 42 {NEXT (state $val) = $_}; say "alive"' alive
This does not fail any longer. But the tests in integration/advent2012-day15.t don't pass. I'd say the following command shows more: $ perl6-m -e 'for 42 {NEXT (state $val) max= $_; LAST say "last: ", $val;}; say "alive"' last: -Inf alive $ perl6-p -e 'for 42 {NEXT (state $val) max= $_; LAST say "last: ", $val;}; say "alive"' alive $ perl6-j -e 'for 42 {NEXT (state $val) max= $_; LAST say "last: ", $val;}; say "alive"' last: 42 alive On Parrot LAST does not fire, on Moar it fires but $val has a weird value, only on JVM it fires and $val is 42.