my %foo = ( a => 1, b => 2, c => 3 ); mysub(\%foo); sub mysub { my %x = %{scalar shift}; foreach ( sort keys %x ) { print "$_ -> $x{$_}\n"; } }