in reply to Re: Perl v5.13.7 is released
in thread Perl v5.13.7 is released
I don't like that change. It adds more to the syntax confusion than it takes away. If I'm pushing values into an array, I expect the argument to be some kind of array. It feels natural in Perl. All those sigil-mangling changes (and I'd like to include Perl6's sigil immutability here) stray from that (relatively simple) direction.
Automatic dereferencing syntax (meaning: s/@$/@/ or s/@{$ref}/@ref/) would be more useful. For example:
|----------------------------+---------------------------| | Traditional syntax | Auto syntax | |----------------------------+---------------------------| | push @$arrayref, @stuff | push @arrayref, @stuff | | unshift @$arrayref, @stuff | unshift @arrayref, @stuff | | pop @$arrayref | pop @arrayref | | shift @$arrayref | shift @arrayref | | splice @$arrayref, 0, 2 | splice @arrayref, 0, 2 | | keys %$hashref | keys @hashref | | keys @$arrayref | keys @arrayref | | values %$hashref | values @hashref | | values @$arrayref | values @arrayref | | ($k,$v) = each %$hashref | ($k,$v) = each @hashref | | ($k,$v) = each @$arrayref | ($k,$v) = each @arrayref | |----------------------------+---------------------------|I was following the p5p discussion about these changes, but I kept silent, so it's probably too late for this kind of rant now :)
In Section
Perl News