Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re^4: About List::Util's pure Perl shuffle()

by ikegami (Pope)
on Jul 12, 2007 at 13:29 UTC ( #626233=note: print w/replies, xml ) Need Help??

in reply to Re^3: About List::Util's pure Perl shuffle()
in thread About List::Util's pure Perl shuffle()

It's similar to print($i, $i++, $i);, at least in effect. Perl must place some form of pointer* to $a[$n]'s value on a stack instead of making a new scalar to save speed and memory. The result is that when $a[$n] is changed by the third expression in the list slice, it also changes the value of the second expression.

By explicitly copying the value of $a[$n] into another variable ($x), changes in $a[$n] no longer affect the result of the slice.

* — An alias? A pointer to the SV?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://626233]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (13)
As of 2016-10-21 18:58 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (289 votes). Check out past polls.