in reply to Re^3: ref to read-only alias ... why? (not consistent)
in thread ref to read-only alias ... why?
Your right it's not consistent. But IMHO consistency will most likely break legacy code.
I think you're saying that because you envision it being consistently broken (always dying) instead of it being consistently fixed (never dying).
There are two ways of fixing it:
- Have literal constants always return new values. That's inefficient.
- Have literal constants return copy-on-write values. There's currently no such mechanism, and that's a lot of work to implement.
Check out this bug that would also be fixed by either of the above two fixes:
for (1..2) { for (1..3) { print $_++; } # 123 234 print "\n"; }
|
---|
In Section
Seekers of Perl Wisdom