sub ST(&@){ my $metric=shift; map {$_->[0]} sort {$a->[1] cmp $b->[1]} map {[$_,&{$metric}]} @_ } my @versions = qw(2.0.0 1.0.9 1.0.10 1.1.0 1.1.2); @versions = ST {pack'C*',split/\./} @versions;