in reply to read a file and build HoA

hello sstruthe

Perl is intelligent enogh to let you to say "A scalar and A list = Another List" and just works:
$scalar, @array = split ' ', $_
and you get the key (scalar) and the rest (a list), obviously after you chomped the line of the file.

Note also that DATA is a special filehandle: is the file containing the source code of your running script, seeked at the point where the special token __DATA__ is found. So if the data is in a separte file use another name for the filehandle or even better use the modern form: open my $file_handle_name, '<', $file_name or die "unable to open $file_name for read!" as in the right part of the docs (perlintro and peropentut)

As final note, why you use our (it is not the plural form of my)?

The oneliner version also can be useful:
perl -MData::Dump -lane "my($scalar,@array)=split; dd $scalar; dd @arr +ay" exampledata.txt "A" ("another", "awesome", "awful") "E" ("example", "estinguished")

L*

UPDATE: if you want directly the HoA created take a look at @F in special variables:
perl -MData::Dump -lane "$HoA{$F[0]} = [ @F[1..$#F] ]; END{dd %HoA}" e +xampledata.txt ( "A", ["another", "awesome", "awful"], "E", ["example", "estinguished"], )


L*
There are no rules, there are no thumbs..
Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.