use Data::Dump qw/ dd /; { my @blah; $blah[0] = []; $blah[0][$i] = []; $blah[0][$i][$j] = []; $blah[0][$i][$j][$k] = {}; $blah[0][$i][$j][$k]{life} = 42; dd( \@blah ); } { my @blah; $blah[0][$i][$j][$k]{life} = 42; dd( \@blah ); } __END__