The specification of sort! reads:
Function: sort! sequence less?
Function: sort! sequence less? key
Returns list, array, vector, or string sequence which has been
mutated to order its elements according to less?. Given valid
arguments, it is always the case that:
(sorted? (sort! sequence less?) less?) => #t
Would be possible to add that the sorting is in-place?
That is guarantee, that no (or very little) extra memory
is allocated during the sorting process.
--
Jens Axel Søgaard