in reply to array naming

You'll be best off using a special kind of an array called a hash. perldata has more details.

The difference is that instead of using numbers to get at elements of the array, you use text. Suppose you had a file like the following:

location=dungeon name=corwin weapon=grayswandir
You might read it in and put it in the hash as in this snippet:
my %data = (); # initialize hash while (<INPUT>) { # assume you have the file open already my ($key, $value) = split(/=/, $_, 2); $data{$key} = $value; }
You'll end up with $data{name} set to 'corwin' and so forth.

Update: If you want to keep an actual array around, you can put a reference in a hash. See perlref and perldsc for more details:

$data{$arrname} = \@array; # or $data{$arrname} = [ @array ];
or some such nonsense.