do { my $discard = <$inFH> };
I don't think Anonymous Monk really wants to discard the first line/record of data (update: that was my first thought, too); it's just an illusion created by the peculiar way he or she declares and pre-initializes the $line variable prior to entering the while($line){ ... } loop in the OPed code. Note also the odd way the next $line of data is read at the end of the while-loop in that code.
Update: I must also express my preference for the use of List::Util::uniq() (which used to be in List::MoreUtils — and still is!) rather than the explicit grep-ing to a hash that you're doing: it seems to express intent much more clearly for little or no cost.
Give a man a fish: <%-{-{-{-<
In reply to Re^2: multi dimensional hash
by AnomalousMonk
in thread multi dimensional hash
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |