use Data::Dumper; use Tie::IxHash; tie %data, 'Tie::IxHash'; do "File"; $data{SomeMoreStuff}{SomeMoreData} = 'x'; print Dumper \%data; #### %data = ( SomeStuff => { SomeData => 'a', SomeMoreData =>'b', OtherData =>'c', }, SomeMoreStuff => { SomeData =>'a', SomeMoreData => 'b', SomeExtraData => 'c', OtherData => 'd' } ); #### $VAR1 = { 'SomeStuff' => { 'OtherData' => 'c', 'SomeMoreData' => 'b', 'SomeData' => 'a' }, 'SomeMoreStuff' => { 'OtherData' => 'd', 'SomeMoreData' => 'x', 'SomeExtraData' => 'c', 'SomeData' => 'a' } }; #### $VAR1 = { 'SomeStuff' => { 'SomeData' => 'a' 'SomeMoreData' => 'b', 'OtherData' => 'c', }, 'SomeMoreStuff' => { 'SomeData' => 'a' 'SomeMoreData' => 'x', 'SomeExtraData' => 'c', 'OtherData' => 'd', } };