On Fri, May 09, 2008 at 03:02:28PM +0200, Carl Mäsak wrote:
> TSa (>):
> > sub bar ($x)
> > {
> > $x = 3; # error, $x is readonly
> > foo($x); # error, could hit rw Str
> > }
>
> By the way, I hope it's possible to make the assignment `$x = 3` to
> the read-only variable $x a compile-time error.
>
> In fact, I hope this to such a degree that I would like it to be part
> of a spec somewhere that a conforming Perl 6 compiler disallows
> assignments to read-only variables. I find nothing to this effect in
> S04 (but my grep-fu is imperfect, so I may just have missed it).
>
> Pugs currently dies with a run-time error on this. Rakudo r27392 runs
> it fine and sets $x = 3 as if $x wasn't read-only.
In Rakudo's case, we just haven't implemented read-only traits
on variables yet. But yes, I expect that it will be caught as
a compile-time error.
Pm