On ordered lists,
nub is equivalent to
nub, except that
it runs in linear time instead of quadratic. On unordered lists it
also removes elements that are smaller than any preceding element.
nub [1,1,1,2,2] == [1,2]
nub [2,0,1,3,3] == [2,3]
nub = nubBy (<)