in reply to Accessing uninitialized arrays. Black magic

Hi Anonymous Monk,
Just a reminder, that the array @array_rev has undef as it's first element, since array index start from "0". So, what you are doing with this @{$array_rev[1]}=(1,2,3); is to assign an array reference to the second element of the array @array_rev.
Using Data::Dumper like so can give some insight:

use Data::Dumper; my @array_rev; @{$array_rev[1]}=(1,2,3); print Dumper \@array_rev; __END__ $VAR1 = [ undef, [ 1, 2, 3 ] ];

If you tell me, I'll forget.
If you show me, I'll remember.
if you involve me, I'll understand.
--- Author unknown to me