Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Odd splice behavior between perl/OS versions

by dave_the_m (Prior)
on Oct 28, 2016 at 19:14 UTC ( #1174912=note: print w/replies, xml ) Need Help??


in reply to Odd splice behavior between perl/OS versions

Between 5.10.0 and 5.12.0 the way $#array is handled in rvalue context changed. In lvalue context, that expression returns a magic value which, when assigned to, updates the array's length. In 5.10.0, a similar magical value was also returned in rvalue context, which delayed evaluation of the array's length until the second (left-most) split was being done. In 5.12.0 onwards, the rvalue $#array expression is evaluated immediately.

This appears to be intentional:

commit 02d85cc37a4acecafdc2f0b45640b03cd1f4ac71 Author: Eric Brine <ikegami@adaelis.com> AuthorDate: Fri Oct 23 19:05:40 2009 -0400 Avoid adding magic with rvalue $#a

Dave.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1174912]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (8)
As of 2018-07-20 20:55 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?















    Results (441 votes). Check out past polls.

    Notices?