mysub( FH => *INPUT, arr1 => \@arr1, arr2 => \@arr2 ); sub mysub { my %args = @_; my $first = $args{arr1}->[0]; } #### sub named_params_with_defaults { my %args = ( one => 'default value', two => 'default value', @_, # Will override the above values. ); } named_params_with_defaults( one => "override arg 'one'" );