my %HoA; ## Typo corrected open my $fh, '<', 'junk.dat' or die $!; /(\S+)\s+(\S+)/ and push @{ $HoA{ $1 } }, $2 while <$fh>; close $fh; pp \%HoA; { ernest => [38, 27], jim => [14, 34], john => [23, 44], matilda => [43, 22] }