sub first_sub { my ($args) = @_; # ... Do stuff here with $args->{FOO} ... $object->method(@{$args}{qw(ARG1 ARG2 ARG3)}); # ... Do more stuff here, this time with $args->{ETC} ... } first_sub( { ARG1 => 0, ARG2 => 1, ARG3 => 2, FOO => 'bar', ETC => 'etc', }, );