DOH! I finally understood an earlier comment someone else made about <= being worse for stable sorting. This is because with a partial rather than total order, (< x y) !=== (not (<= y x)), but rather (< x y) === (and (<= x y) (not (<= y x))) It seems plausible that this is why CL did what it did. Probably more efficient... David