This kind of thing is hard to prove or even explain, but I feel that Haskell error messages tend to point me to the cognitive mistakes, the ways I'm thinking wrongly about the problem. Whereas scripting language errors just point me to superficial brain farts. By the time I get Haskell code to compile, I already understand that code an order of magnitude deeper. That makes haskell VALUABLE. (to me)