c:\@Work\Perl\monks\tel2>perl -wMstrict -MData::Dump -le "my @ra = ({a=>1, b=>2}, {a=>1, b=>2}); print qq{@ra}; ;; @ra = ({a=>1, b=>2}) x 2; print qq{@ra}; " HASH(0x1555cdc) HASH(0x1555e50) HASH(0x1555e20) HASH(0x1555e20) #### c:\@Work\Perl\monks\tel2>perl -wMstrict -MData::Dump -le "my %hash; ;; @hash{ qw(key1 key2) } = ({a=>1, b=>2},{a=>1,b=>2}); dd \%hash; ;; @hash{ qw(key1 key2) } = ({a=>1, b=>2}) x 2; dd \%hash; " { key1 => { a => 1, b => 2 }, key2 => { a => 1, b => 2 } } do { my $a = { key1 => { a => 1, b => 2 }, key2 => 'fix' }; $a->{key2} = $a->{key1}; $a; }