in reply to Aliases upon aliases

I'm not quite sure what you're getting at. You could replace 0..4 with 'a'..'e' and you'll get the same answer. You're essentially "protecting" the second half of the list by writing on it with new values using splice (which doesn't trigger the aliases because it operates on lists, not scalars) and then writing on the other half by dealing with the scalars.

The "trick", as it were, is the fact that @_ isn't an alias itself; its elements are aliases.

Being right, does not endow the right to be rude; politeness costs nothing.
Being unknowing, is not the same as being stupid.
Expressing a contrary opinion, whether to the individual or the group, is more often a sign of deeper thought than of cantankerous belligerence.
Do not mistake your goals as the only goals; your opinion as the only opinion; your confidence as correctness. Saying you know better is not the same as explaining you know better.

I shouldn't have to say this, but any code, unless otherwise stated, is untested

Replies are listed 'Best First'.
Re^2: Aliases upon aliases
by Pragma (Scribe) on Sep 29, 2004 at 19:08 UTC
    Yes, the 0..4 was not the point; I simply needed to overwrite it with a 5-element list with any values. My reason for posting this was exactly the "trick" you noted, and the fact that splice does not involve the aliases, even when overwriting.