Hi Dan,

On Sat, Feb 7, 2009 at 12:00 PM, Dan Doel <dan.doel@gmail.com> wrote:
On Saturday 07 February 2009 12:11:29 pm Gregg Reynolds wrote:

As far as I know, Moggi didn't really have anything directly to do with
Haskell. He pioneered the idea of monads being useful in denotational
semantics. But it was Wadler that recognized that they'd be useful for
actually writing functional programs (see his "The Essence of Functional
Programming"). So one might say that it was his doing that brought monads to
Haskell proper.

From what I've read Wadler was clearly the guy who thought of using monads in Haskell, but he explicitly credits Moggi for coming up with the general idea.  Moggi just as clearly knew he was on to something powerful and useful (e.g. something " that could lead to the introduction of higher order modules in programming languages like ADA or ML").  What I would be interested in knowing is whether it was Wadler or Moggi who first realized monads (and CT) could be encoded directly in a target language, not just in a semantic metalanguage.  Plus there were other people working in the same area; I just don't know the detailed history.  Might be a good subject for a blog post for somebody who does.

FYI I made a few corrections to my original post.

-gregg