The language itself is the same over-engineered bullshit as the programs that are written in it.
Name:
Anonymous2011-10-04 6:21
I decided to stop torturing myself and part with Haskell. Why I did that?
1. I don't give a damn about its type system and Haskell was putting it in my throat.
2. I didn't learned anything new. Well beside bunch of tricks, and I wasn't looking for tricks. I expected new paradigm, novel idea or an elegant combination of existing ones but there was nothing of those to inspire me to continue wrestling with the static typing.
The best description of static typing came from Aatu Koskensilta: One of the reasons to prefer a powerful type system is precisely the ability to encode some such conditions and information in the types. The usefulness of a type system depends on which conditions are expressible in it, and with what amount of effort. In any case, if one does not use the type system for anything useful, it obviously will be nothing but a burden.
Learning to program in languages such as Haskell involves learning how to use its type system to do useful thing, just as one would learn to use macros etc. when learning Common Lisp or Scheme. Don't think of the type system as a straight-jacket, think of it as something to hack, a tool -- or just continue writing your code in a dynamically typed language if that's your thing.
And static typing is definitely not my thing. But if I decide to get in those waters someday I will look no further than Qi, it has the most powerful type system, it's optional and I could even hope that it'll be ASDF packaged.
It may interest you to know that most of my development time for that was spent typing: paging through the library, trying things out at the REPL, tweaking, debugging, iterating. It's a style I find much easier than staring at a blank screen and thinking very hard, and one for which I find forgiving languages like Perl and Lisp are much better than Haskell.
Farewell Haskell, you're joining the company of languages that didn't taught me much about programming nor changed the way I'm thinking. As Alan Perlis once said: "A language that doesn't affect the way you think about programming, is not worth knowing". The rest of the crew consists of pascal, basic, delphi, php, c#, ocaml, python and sql.