if your only passing one param you can just do foo(%baz); sub foo{my %stuff=@_;} if you want to pass more then one and keep them seperate then use references like foo(\%baz,\%qux); sub foo{my $stuff1_ref=shift; my $stuff2_ref=shift;}
Comment on Re: Passing a multidimensional Hash to a sub-routine