... sub x { my @sorted = map $_->[1], sort{ $a->[0] cmp $b->[0] } map[ $_->title eq 'Manager' ? 'A'.$_->name : 'B'.$_->name, $_ ], @employees; } cmpthese( -1, { obvious => \&obvious, subtle => \&subtle, functional => \&functional, x => \&x, }); __END__ C:\test>junk87 Rate obvious subtle functional x obvious 185/s -- -15% -60% -83% subtle 218/s 18% -- -54% -80% functional 469/s 153% 115% -- -58% x 1111/s 500% 411% 137% --