The power of Haskell is that it acknowledges the fact that it's a messy world and deals with it with the help of Monads.
You could turn it around and say that non-haskell programs live in an ivory tower and ignore the messy world below :)
You could turn it around and say that non-haskell programs live in an ivory tower and ignore the messy world below :)
So someone has a tough problem dealing with the messy real world, and then you tell him to use Monads. Now he has two problems :-)
Ok, I'm kidding, but mbrock's answer is a lot better in terms of selling the language in that it mentions something that anyone can figure out is a good idea, without getting into the details of it.
> encourage a clean "separation of concerns" between logic and interaction.