[Haskell-cafe] Fractional/negative fixity?
Simon Marlow
simonmar at microsoft.com
Tue Nov 7 11:43:26 EST 2006
Henning Thielemann wrote:
> On Tue, 7 Nov 2006, Simon Marlow wrote:
>
>> I'd support fractional and negative fixity. It's a simple change to
>> make, but we also have to adopt
>>
>>
> http://hackage.haskell.org/cgi-bin/haskell-prime/trac.cgi/wiki
> /FixityResolution
>>
>> I've added the proposal to the end of that page. In fact, the page
>> already mentioned that we could generalise fixity levels, but it
>> didn't mention fractional or negative values being allowed.
>
> Maybe that page could also mention earlier proposals and the solutions
> without precedence numbers. I prefer the non-numeric approach
> with rules
> like "(<) binds more tightly than (&&)", because it says what
> is intended
> and it allows to make things unrelated that are unrelated, e.g. infix
> operators from different libraries.
This is a much more heavyweight change, and its not a clear win. Yes I agree that in some ways it's strange to enforce a total order between unrelated things, but on the other hand it's very convenient, and easy to understand.
Currently the default fixity is infixl 9. That is, if you don't declare a fixity, you automatically get a fixity that can be used relative to every other operator. This is quite useful - I bet if we made it mandatory to declare all the relative fixities then we'd need to add fixity declarations to lots of code. I forsee this being quite tiresome.
If you'd like to make a concrete proposal, then feel free to do so and I'll make sure it gets onto the wiki.
Cheers,
Simon
More information about the Haskell-Cafe
mailing list