
2009/3/4 7stud
Here are my top three:
...
3) Not putting parentheses around arguments of the form x:xs
dosomething x:xs = head xs
I have a variation here: function [] = ... function [x:xs] = ... Another of mine is the classical: print function arguments -- or variations but I finally learned to use '$' here .
In all three cases, the error messages don't help spot the problem.
I think that part of the problem is that haskell syntax is powerful but
terse, and therefore is not easy for a compiler to guess the intensions in the programmers. For instance, in any other language the expression 'map f' would give the error "missing second parameter", while in haskell could be a partial function application. However, some of ghc messages could probably be made more 'beginners-friendly'. Ciao --------- FB