in reply to Odd splice behavior between perl/OS versions

If it helps, 5.10.1 on windows produces the same results as on linux:

C:\test>perl #!/usr/local/bin/perl use strict; use warnings; my @stuff = qw(one two three four five six seven eight nine ten); print "Before:\n\n", join(",", @stuff), "\n"; splice(@stuff, $#stuff, 0, splice(@stuff, 3, 1)); splice(@stuff, $#stuff, 0, splice(@stuff, 3, 1)); splice(@stuff, $#stuff, 0, splice(@stuff, 3, 1)); print "\nAfter:\n\n", join(",", @stuff), "\n"; exit 1; ^Z Before: one,two,three,four,five,six,seven,eight,nine,ten After: one,two,three,seven,eight,nine,four,five,six,ten

Which is different from 5.22 on the same machine:

C:\test>\perl22\bin\perl.exe #!/usr/local/bin/perl use strict; use warnings; my @stuff = qw(one two three four five six seven eight nine ten); print "Before:\n\n", join(",", @stuff), "\n"; splice(@stuff, $#stuff, 0, splice(@stuff, 3, 1)); splice(@stuff, $#stuff, 0, splice(@stuff, 3, 1)); splice(@stuff, $#stuff, 0, splice(@stuff, 3, 1)); print "\nAfter:\n\n", join(",", @stuff), "\n"; ^Z Before: one,two,three,four,five,six,seven,eight,nine,ten After: one,two,three,seven,eight,nine,ten,four,five,six

So it seems to be down to version alone rather than platform.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority". I knew I was on the right track :)
In the absence of evidence, opinion is indistinguishable from prejudice.