While {*} is only useful in a proto, the compiler detects it no matter
where you write it.
> my $block = {*};
===SORRY!=== Error while compiling:
{*} may only appear in proto
at line 2
--> ⏏
On Thu, Jun 25, 2020 at 3:48 PM Fernando Santagata <
nando.santag...@gmail.com> wr
On Thu, Jun 25, 2020 at 8:10 PM Brad Gilbert wrote:
> {*} is specially handled by the compiler as a term.
>
Thank you!
I guess that handling is peculiar to proto, and maybe it's worth
documenting it.
--
Fernando Santagata
{*} is specially handled by the compiler as a term.
Let's say you have a class named Foo:
class Foo {…}
You wouldn't expect to be able to use it like this:
F o o.new()
It is the same thing with {*}.
The only difference is that {*} is meant to look like a Block { } combined
with a Whate
Hi *,
I was trying to see if one can delegate phasers to a proto, like this:
proto sub foo(|) {
ENTER { say 'In' }
LEAVE { say 'Out' }
{*}
}
multi sub foo(Int $a) {
$a
}
multi sub foo(Str $a) {
$a
}
say foo(1);
say foo('hello');
Yes indeed, it outputs:
In
Out
1
In
Out
hello
But at fi