use Data::Dumper; ###################################### my @multi; my $what_is_this = \$multi[1]; foreach my $i ( 10 .. 12 ) { foreach my $j ( 10 .. 12 ) { $multi[$i-10][$j-10] = "$i,$j"; } } print Dumper $what_is_this; print "\n\n"; ###################################### my @multi2; my $what_is_this2 = $multi2[1]; foreach my $i ( 10 .. 12 ) { foreach my $j ( 10 .. 12 ) { $multi2[$i-10][$j-10] = "$i,$j"; } } print Dumper $what_is_this2; print "\n\n"; ###################################### my @multi3; foreach my $i ( 10 .. 12 ) { foreach my $j ( 10 .. 12 ) { $multi3[$i-10][$j-10] = "$i,$j"; } } my $what_is_this3 = $multi3[1]; print Dumper $what_is_this3; __END__ $VAR1 = \[ '11,10', '11,11', '11,12' ]; $VAR1 = undef; $VAR1 = [ '11,10', '11,11', '11,12' ];