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

Reply via email to