http://www.perlmonks.org?node_id=167084


in reply to delete(), but for arrays

Well, as the following shows delete() does not do anything like splice does on an array. Rather it is exactly the same as undefing the element in question. No reordering of the array is done as would be in splice. (In fact it was the impact of this confusion that lead to the debate about whether it should be allowed or not)
my @array=(0..9); delete $array[5]; print "'$_'\n" foreach @array; __END__ '0' '1' '2' '3' '4' '' '6' '7' '8' '9'
HTH

Yves / DeMerphq
---
Writing a good benchmark isnt as easy as it might look.