Cafe,

I was watching a panel on languages[0] recently and Martin Odersky (the creator of Scala) said something about Monads:

"What's wrong with Monads is that if you go into a Monad you have to change your whole syntax from scratch. Every single line of your program changes if you get it in or out of a Monad. They're not polymorphic so it's really the old days of Pascal. A monomorphic type system that says 'well that's all I do' ... there's no way to abstract over things. " [0, 53:45]

Thoughts?

--J Arthur

[0] - http://css.dzone.com/articles/you-can-write-large-programs