in reply to passing arrays to subroutines

With two arrays, you do need to pass as references, otherwise there's no way to tell where one array ends, and the other begins. Once in the subroutine as references, you need to de-reference them to get at the values...
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 }
Refer to perlref for more information.
Dr. Michael K. Neylon - mneylon-pm@masemware.com || "You've left the lens cap of your mind on again, Pinky" - The Brain