
On Sat, Apr 25, 2009 at 07:38:59PM +0400, Miguel Mitrofanov wrote:
Also, I don't mistake the transformers as different parameters because of the parenthesis
You should really try Lisp. In my opinion, parenthesis are a kind of noise - too small, too many.
I don't try lisp because I don't like a lot of parenthesis as well. However the problem isn't with parenthesis, it is with their excessive usage. In this case they're helpful, IMO.
and because they're transformers, reading their names gives you a clue of how they may be used.
So... you really think transformers CAN'T be parameters? You're going to be surprised. [...] Whoever knows Haskell - no offense - expects to see both.
Haha :), so "giving a clue of how they may be used" means "meaning that they will always be fully applied" now? Sorry, but don't go hostile on me putting words on my mouth. How do you *usually* see transformers being used? Questions of how you read something in a glance have to touch the question of how much you *expect* to see something. So, if I expect to see data D = Constructor Something Other Here or data D = Constructor {field1 :: Something ,field2 :: Other ,field3 :: Here} then I can misread data D = Constructor (Something (Other Here)) This is Daniel's point: you misread it because you expected something else. So, was Daniel trying to say that you can't have one field on multiple lines? Not at all. When I see two or more transformers, I expect to see them nested, and probably most other people have the same expectations. -- Felipe.