my @array1 = (0..9); my @array2 = ('a'..'l'); (@a1, @a2) = &f(\@array1, \@array2); print "\@a1 is: @a1\n"; print "\@a2 is: @a2\n"; sub f { my @a1 = @{shift}; my @a2 = @{shift}; ... return (\@a1, \@a2); }