Writing Haskell involves an hour of meditation followed by the emission of a fold expression.
Jonathan Feinberg