The := operator only has one behaviour/semantics in this example. However, in one of your examples you're actually getting a Scalar inside a Scalar. Check this out:

timo@schmand ~> perl6 -e 'my $a = 3; sub ss1(Scalar $s, $nv) { say $s.VAR.DUMP }; ss1($a.VAR, 7)'
▶3
timo@schmand ~> perl6 -e 'my $a = 3; sub ss1($s, $nv) { say $s.VAR.DUMP }; ss1($a.VAR, 7)'
▶▶3

Does that help clear things up a little?

I'm not sure what mechanism causes the example where Scalar is supplied in the signature to not re-containerize, though.

Reply via email to