push ARRAY,LIST
push EXPR,LIST

Treats ARRAY as a stack by appending the values of LIST to the end of ARRAY. The length of ARRAY increases by the length of LIST. Has the same effect as

for $value (LIST) {
    $ARRAY[++$#ARRAY] = $value;
}

but is more efficient. Returns the number of elements in the array following the completed push.

Starting with Perl 5.14, push can take a scalar EXPR, which must hold a reference to an unblessed array. The argument will be dereferenced automatically. This aspect of push is considered highly experimental. The exact behaviour may change in a future version of Perl.