There is growing list of smart programmers who get all enchanted with Haskell, jump into it wholeheartedly, and end up frustrated (see bottom of message). GHC makes the typical C++ compiler seem fast. Once code grows past the homework problem size, all hope of understanding memory usage is lost. I don't think people really get how bad that it is. The whole culture of Haskell is based around static checking, yet you have to run a program in order to find out if it blows your memory limit several times over.
Haskell is still a neat language, but we need less advocacy based on toy programs and more honest realism.
(Here's a typical, non-superficial example: http://wagerlabs.com/haskell-vs-erlang-reloaded-0)