use strict; use Data::Dumper; my %bits; $bits{'zero'}='start element'; &loader('something',\%bits); print 'Result:'.Dumper(\%bits); sub loader{ # loads values into hash.. my $tail = shift; my %h_ref = %{+shift}; print 'In sub:'.Dumper(\%h_ref); $h_ref{'one'}='thing_'.$tail; $h_ref{'two'}='thong_'.$tail; print 'After add:'.Dumper(\%h_ref); }