if @a = (a,b,c), after undef @a[1,2] we might get a,b as the content of @a, which is quite clear, because only $a[2] becomes undef, but consider the hash slice case if @a = (a,b,c), undef @a{@a} gives me, undef values properly for the keys a,b and c, how is this possible?, I thought that as per array slice effect it should only undef $a{c} isn't it?.