in reply to Re: using function delete with arrays
in thread using function delete with arrays

Another idea how to accomplish what you (presumably) want to do:

use List::Util qw(shuffle); @list = shuffle @list; # now you can just shift() or pop() until @list is empty