use Sort::Key; @sorted = keysort { ($_ ge $top ? 'a' : 'b').$_ } @unsort; [download]
In reply to use Sort::Key by salva in thread Optimizing a sort function (wrap-around alpha) by SineSwiper