As I understand it, the 'automatic taking of references' thing only applies when you're dealing with an array/hash/sub in a scalar context.
Judging by the work that's going on in parrot, $a = $b won't copy the value of $b immediately, but will create a 'copy on write reference'. A copy will only be made if either of $a or $b is modified.
In reply to Re: Perl6 - value vs. reference issues
by pdcawley
in thread Perl6 - value vs. reference issues
by John M. Dlugosz
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |