Имеем квиксорт:
let sort list =
match list with
| [] -> []
| x::xs -> List.concat [(List.filter (fun i -> i <= x) xs) ; [x] ; (List.filter (fun i -> i > x) xs)]
Этот код прекрасно сортирует и списки строк и списки чисел и даже списки списков
а вот такой банальный
let adder x y = x + y
умеет складывать только целые, но не флоаты
По ходу операция сложения не считается обобщенной, в отличии от сравнения. Есть какое нить объяснение, за что плюс обделили???
... << RSDN@Home 1.2.0 alpha 4 rev. 1218>>