my @array1 = ( 1..6 ); my @array2 = ( 7..12 ); my_sub( \@array1, \@array2 ); sub my_sub { my ( $ref1, $ref2 ) = @_; # get these as references... @arr1 = @$ref1; @arr2 = @$ref2; # either deference into new variables... print @arr1, @arr2; print @$ref1, @$ref2; # or just use the reference directly }