in reply to return multiple hashes from a sub

Your initialising was wrong; use:
my %hash1 = ( 1=>"foo1", 2=>"bar1" ); ## instead if my %hash1 = { 1=>"foo1", 2=>"bar1" };
... no curlies!

pelagic