Proposal: change to qualified operator syntax
kahl at cas.mcmaster.ca
kahl at cas.mcmaster.ca
Wed Jul 8 18:06:30 EDT 2009
Simon Marlow replied to Henning Thielemann:
> Prelude.>>= just doesn't look like an infix operator. The point of
> infix operators is that they are a lightweight notation, but they lose
> that advantage when qualified. The qualified operator proposal gives
> you a nice rule of thumb to rely on when parsing code in your head: if
> it begins with a letter, it is not infix. The advantages of this
> shouldn't be underestimated, IMO.
Actually, I am another supporter of qualified infix operators.
Is see on
> http://hackage.haskell.org/trac/haskell-prime/wiki/QualifiedOperators
that with the new proposal, I would have to write
`Prelude.(>>=)`
which in my opinion only asks for extension of the backquote symtax to
arbitrary epressions, like
`zipWith (+)`
. I frequently run into situations where that would be extremely useful.
> the M.. M... M.... debacle
I don't think that problems arising from a single character
should outlaw a whole lexical category.
Better outlaw that character! ;-)
The QualifiedOperators page also says:
| You might argue that it is inconsistent to allow `(+)` but not allow
| (`plus`), but the justification is simply that (..) and `..` are not
| dual in this design.
I would indeed argue that they should be dual.
Back to the original argument:
> Prelude.>>= just doesn't look like an infix operator.
I think that
`Prelude.(>>=)`
doesn't really look like an infix operator either.
If nobody else finds the time to do it,
I'll hack lhs2TeX some day to generate a suscripted presentation,
somewhat like
|>>=|_{|Prelude|}
from whichever variant will be legal at the time,
and if the choice is among these two variants,
I'd much prefer to type Prelude.>>= in my source code.
Wolfram
More information about the Haskell-prime
mailing list