I don't mind the flexibility of using braces or the end keyword to end things like blocks. I also do not mind the optional parenthesis for function calls. I've started to write mine without them just to get used to the idea so that when I have some down time Haskell will not look as weird. It also save me some typing which is nice since I have difficulty using my hands. Though I do think that using parenthesis *is* better in terms of letting people know that something is a function and not something else when it takes arguments. With respect to formal grammar specifications, I do not think that they are necessarily as useful if they are viewed in isolation. What I would like to see is the grammar spec integrated into the standard documentation so people can readily cross-reference what they read with the spec. When I first started playing around with Haskell I found it very hard to get a handle on things because I had to constantly flip back between the documentation for a function, Real World Haskell, and the specification. Having to build a map in your head of a language by looking at a dictionary and a grammar book was acceptable prior to the invention of hypertext. We should not have to be doing that in the modern era with any language. But it seems like we have simply overlooked this part of learning and continued to do things the old way as if we had a limit to how many pages we could cram into a single electronic document.