sub flattened { my( @a, @b ) = @_; return @a; # Returns everything. } sub preserved { my( $a_aref, $b_aref ) = @_; return @$a_aref; # Returns only the stuff contained in @$a_aref. } my @this = qw( 1 2 3 ); my @that = qw( 4 5 6 ); print "$_\n" for flattened( @this, @that ); # prints 1 2 3 4 5 6. print "$_\n" for preserved( \@this, \@that ); # prints 1 2 3.