On 7/2/07, Andrew Coppin <[EMAIL PROTECTED]> wrote:
What were monads like before they became a Haskell language construct?

Is Haskell's idea of a "monad" actually anywhere close to the original
mathematical formalism?

It's as close to a mathematician's notion of a monad as Haskell's
types and functions are to the objects and arrows of category theory.
They are essentially the same thing. Using the notation here:
http://en.wikipedia.org/wiki/Monad_%28category_theory%29 'return' is
eta and join is mu. If you're more familiar with >>= than join, then
its definition is

join x =  x >>= id

and I'll leave recovering >>= from join as a nice exercise.

Knowing that you were about to ask this question I told my past self
by tachyon express and wrote up on it this weekend:
http://sigfpe.blogspot.com/2007/06/monads-from-algebra-and-the-gray-code.html
--
Dan
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to