Michael Vanier <mvanier@cs.caltech.edu> wrote in article <20050819054742.5C785103BE4@orchestra.cs.caltech.edu> in gmane.comp.lang.haskell.cafe:
Basically, though, the Haskell implementation _is_ the category theoretic definition of monad, with bind/return used instead of (f)map/join/return as described below.
Doesn't the Haskell implementation really correspond to the notion of a strong monad in category theory, once we take into account the fact that free variables can occur anywhere in the arguments to bind and return? -- Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig 2005-09-08 International Literacy Day http://www.un.org/depts/dhl/literacy/ 2005-09-21 International Day of Peace http://www.internationaldayofpeace.org/ 2005-09-22 European Car-Free Day http://www.22september.org/ 2005-09-26 European Day of Languages http://www.ecml.at/edl/