Here's a spectacular example, due to Andrew R. Koenig.
We will write a merge sort function.
Split list into two lists
Sort each list separately
Merge sorted lists together
We expect the type of this function to be
(Ord a) => [a] -> [a]
|Next||Copyright © 1999,2008 Mark Dominus|