##
use strict;
my %ARRAYS;
my @names = qw(A B C D);
for (my $i=0; $i<4; $i++) {
@{ $ARRAYS{$names[$i]} } = $i;
}
use Data::Dumper;
print Dumper(@ARRAYS{@names});
####
use strict;
my (@A, @B, @C, @D);
my @names = (\@A, \@B, \@C, \@D);
for (my $i=0; $i<4; $i++) {
@{$names[$i]} = $i;
}
use Data::Dumper;
print Dumper(\@A, \@B, \@C, \@D);