%dat_mapping = (); %eng_mapping = (); #### foreach my $file_name (key (%dat_mapping)) { print "blah\n"; } #### foreach my $file_name (key (sub { if ($hash_name eq 'dat') { return \%dat_mapping; } else { return \%eng_mapping: } } ) { print "blah\n"; }