sort/2 ISOsort(+List, -Sorted)
Sorts the elements of the list List into the ascending standard order, and removes any multiple occurrences of an element. The resulting sorted list is unified with the list Sorted.
list of term, must be a proper list
list of term
Sorted is type checked since release 4.3 for alignment with the ISO Prolog standard. Previous releases simply failed instead of reporting an error for malformed Sorted.
instatiation_errortype_errorList is not a proper list
type_errorSorted cannot be unified with a proper list
| ?- sort([a,X,1,a(x),a,a(X)], L). L = [X,1,a,a(X),a(x)]
(The time taken to do this is at worst order (N log N) where N is the length of the list.)