in reply to Creating Flags
my($n1,$n2,$letter,$ordinal,$name,$code) = (my @record = split(/[\s,]+/,$_)); push (@DB, [@record]);
You are needlessly copying the array to a new array:
my ( $n1, $n2, $letter, $ordinal, $name, $code ) = my @record = split /[\s,]+/; push @DB, \@record;
(@{$hash{"$name$code"}})[-1]
That is usually written as $hash{"$name$code"}[-1]. You are needlessly copying the array to a list.
my ($a_ordinal,$a_name) = (@$a)[3,4]; my ($b_ordinal,$b_name) = (@$b)[3,4];
Again, you are needlessly copying the array to a list. That is better written as:
my ( $a_ordinal, $a_name ) = @{ $a }[ 3, 4 ]; my ( $b_ordinal, $b_name ) = @{ $b }[ 3, 4 ];
|
|---|