use strict; use warnings; my $x=[ [ [1..6],[1..6] ], [ [2..7],[2..7] ], [ [3..8],[3..8] ] ]; print "($x) has ".scalar(@$x)." elements\n"; foreach my $ix (0..$#$x) { my $y=$x->[$ix]; print "\t\$x->[$ix] ($y) has ".scalar(@$y)." elements\n"; foreach my $iy (0..$#$y) { my $z=$y->[$iy]; print "\t\t\$x->[$ix][$iy] ($z) has ".scalar(@$z)." elements\n"; foreach my $iz (0..$#$z) { print "\t\t\t\$x->[$ix][$iy][$iz] = $z->[$iz]\n"; } } }