c:\@Work\Perl\monks>perl -wMstrict -le "my @ra; ;; $ra[3] = 42; print 'A: elements in array: ', scalar @ra; ;; $ra[[1]] = 99; print 'B: elements in array: ', scalar @ra; " A: elements in array: 4 Use of reference "ARRAY(0x5cc15c)" as array index at -e line 1. B: elements in array: 6078813 #### c:\@Work\Perl\monks>perl -wMstrict -le "my @ra; my $x; ;; S($ra[3]); print 'A: elements in array: ', scalar @ra; ;; S($ra[[1]][[0]]); print 'B: elements in top level array: ', scalar @ra; print 'C: elements in 2nd level array: ', scalar @{ $ra[-1] }; ;; sub S { $x = defined($_[0]) . ''; } " A: elements in array: 0 Use of reference "ARRAY(0x94c05c)" as array index at -e line 1. Use of reference "ARRAY(0x432004)" as array index at -e line 1. B: elements in top level array: 9748573 C: elements in 2nd level array: 0