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); } #### In sub:$VAR1 = { 'zero' => 'start element' }; After add:$VAR1 = { 'zero' => 'start element', 'two' => 'thong_something', 'one' => 'thing_something' }; Result:$VAR1 = { 'zero' => 'start element' }; #### ___ /\__\ "What is the world coming to?" \/__/ www.wolispace.com