my @array = (12,23,34,56,876,324,13) ; # Use the array below to test for alphas #my @array = qw(mamma ninnonnina domani festa din don dan) ; my $sortsub ; my $sortnum = sub { $a <=> $b } ; my $sortalpha = sub { $a cmp $b } ; $sortsub = $array[0] =~ /^\d+$/ ? $sortnum : $sortalpha ; my @sorted = sort $sortsub @array ; print map "$_\n",@sorted ;