use subs 'push'; my @a; $_="x"; # push @a; # Error: "Can't use an undefined value as an ARRAY reference ..." print @a; # Override! sub push (\@_;@) { CORE::push( @{+shift},@_) ; } push @a; print @a; # prints "x" @b=("y","z"); push @a,@b; print @a; # prints "2"