Thanks for your sample code
roboticus. I copied and ran it and discovered that an extra level of dereferencing is required. This was a good exercise in reference accessing. Below is your code with the modifications for the extra level of dereferencing. (Note: I commented out the line labeled "Wrong" so it would compile and run) Thanks again!
my @a = [ 1, 4, 9, 16]; # squares
my @b = [ 1, 8, 27, 64]; # cubes
my @c = [ \@a, \@b ]; # two arrays
my $d = \@a;
my $e = \@c;
# OK: @a is an array
print "Sample1: ", $a[0]->[0], "\n";
# Wrong: "Sample1: ", $d is a reference, not an array!
#print "Sample2: ", $d[0], "\n";
# OK: Both of these are fine, though
print "Sample3: ", $d->[0]->[0], "\n";
print "Sample4: ", $$d[0]->[0], "\n";
# with multiple subscripts:
print "Sample5: ", $e->[0]->[0]->[0]->[0], "\n";
print "Sample6: ", $e->[0][0][0][0], "\n"; # same as above, sin
+ce -> is optional between subscripts
print "Sample7: ", $$e[0][0][0][0], "\n"; # also same as above
"Its not how hard you work, its how much you get done."