#!/usr/bin/perl use strict; use warnings; use Benchmark qw( cmpthese ); my @versions = qw(2.4.74 3.2.5 1.14.56 1.45.2 3.14.75); my @sorted = map {$_->[0]} sort {$a->[1] cmp $b->[1]} map {[$_, pack "C*", split /\./]} @versions; print join("\n", @sorted), "\n"; @sorted = map {join ".", unpack "C*", $_} sort map {pack "C*", split /\./} @versions; print join("\n", @sorted), "\n";