Piers Cawley wrote:
My preference is for:
Boo
Boo
Can't dereferene literal numeric literal 42 as a coderef.
How do you reach the second 'Boo'? Iff -> does not create a Sub
but a Block instance then Luke's code can be interpreted as a
much smarter version of
sub foo()
{
enter: 42;
if $?RETURN_LABEL { goto $?RETURN_LABEL }
return;
}
say "Boo!";
say goto foo::enter; # goto sets up $?RETURN_LABEL
say "after goto";
which of course prints
Boo
42
after goto
The smartness is in the value that &prefix:{'->'} returns
while in the snippet above it is explicitly coded.
Or do I completely misunderstand the distinction between
blocks and closures?
--
TSa (Thomas Sandlaß)