| Just to clarify, issues of what names can be used for
| type constructors aside, are you proposing dropping
| infix syntax for defining functions, but retaining infix
| syntax for defining types (and type families etc.)?
|
| Or would the last example have to be written
|
| data (+) a b = Lef
On Fri, Apr 18, 2008 at 08:36:42AM +0100, Simon Peyton-Jones wrote:
> Not allowing infix functions on the LHS would be a notable
> simplification. Constructors in patterns should still be infix of
> course: f (a :=: b) = ...
I don't know, I think this will confuse things, especially for newbies,
Simon Peyton Jones wrote:
> Not allowing infix functions on the LHS would be a notable
> simplification.
This would significantly weaken a useful property of Haskell,
that definitions and uses often share the same concrete
syntax. It's very natural to be able to define things
that way and it wou
Hi,
Simon PJ wrote (Re: BangPatterns: probably accept ==> undecided):
> Not allowing infix functions on the LHS would be a notable
> simplification.
And a little later (Re: Infix type constructors):
> What we *want* is to say
>
> data a + b = Left a | Right b
>
> That is, we want to de
| > > In the list of features "required for Haskell in practice", bang
patterns are
| > > way up there.
| >
| > But their syntax has issues:
| >
| > a!b = ...
| >
| > Did I just define the function "a" or the function "!"?
|
| Interesting note, if we solve this, then we can apply the same thing