use strict; use warnings; use Data::Dump::Streamer; my %hash = (a => 1, b => 2, c => 3); printHash (%hash); sub printHash { my %subHash = @_; print "$_ => $subHash{$_}\n" for keys %subHash; } #### c => 3 a => 1 b => 2 #### ... printHash (\%hash); sub printHash { my ($subHash) = @_; print "$_ => $subHash->{$_}\n" for keys %$subHash; }