[Haskell-cafe] Why Maybe exists if there is Either?
fuuzetsu at fuuzetsu.co.uk
Thu Jan 9 22:56:37 UTC 2014
On 09/01/14 20:57, Patrick Hurst wrote:
> Why have Bool? Just let true = 1, false = 0, (||) = (+), (&&) = (*).
> Why have Ordering? Just use Integer and let lt = -1, eq = 0, gt = 1.
> Why have three-tuples (a, b, c)? Just use ((a, b), c).
> Why have Data.Map a b? Just use a -> Maybe b. You don't even need an Ord
> constraint any more!
> Why have Data.Set a? Just use a -> Bool (or, a -> Integer).
> For that matter, why use algebraic data types? data Person = Person String
> Int is isomorphic to type Person = (String, Int).
Hey, you're right, I should have been using C all along!
Thanks for showing me the light.
More information about the Haskell-Cafe