Original-Via: uk.ac.nsf; Wed, 9 Oct 91 11:45:55 BST
| I just received new revised "Haskell Report, Version 1.1". After looking at
| the new grammer, I was wondering what is meant by the productions for 'afunlhs'.
| For example, p.35 gives an alternative syntax for binding functional values to
| infix operators so that
|
| plus x y z = x+y+z is equivalent to
|
| (x `plus` y) z = x+y+z
|
| This is straight forward and understandable, but the revised grammer also allows
| left hand sides like:
|
| (((a 'plus' b) c d) e) f g = ......
|
| or
|
| (add a b c) d = ......
|
| which the original grammer did no
|
| B.S.H.
The ideal here is to permit any parenthesization of a pattern or lefthand
side that is permitted with the corresponding expression. The above
generalization more or less fell out in a revision of the syntax whose
primary purpose was to provide a uniform treatment of precedence and
associativity of operators in expressions, patterns, and lefthand sides.
--Joe