#include function qsort(s) { return if #s < 2 then s else let p = s[1], l = [e in s | e < p : e], m = [e in s | e == p : e], h = [e in s | e > p : e], t = [q in [l, h]: qsort(q)] in t[1] ++ m ++ t[2]; } A = qsort([10, 9..1]); show_p(A);