On Wed, Dec 24, 2008 at 3:16 AM, Tobias Kräntzer <info@tobias-kraentzer.de> wrote:
Hi,

I think I now understand all the stuff about monades (not the mathematics). I have just one further question.

Beside of the syntactic sugar of the "do" construct and the fact that the IO monade is an "internal type of haskell": Is haskell aware of the concept of monades? As I now understand it, it is "just" a programming model rather than a concept of the language. If not, I have to start new.

It is only a concept of the language insofar as it is needed to do IO (because of the IO monad).  You are correct that it is really more of a programming model.

Indeed, Haskell would be just fine if you took out IO, the class declaration of Monad, and its instances.  And I have used monads in C# (but there is a bit less assurance since lambdas can have side effects).

About the prestress, that's one of the motivations behind renaming them ("warm fuzzy thing" is the current tongue-in-cheek alternative).

Luke