Fractional precedences? Re: Operator precedence help

Jeffrey Brown jeffbrown.the at gmail.com
Thu Sep 3 02:35:57 UTC 2020


In fact if one wanted to override part of the global precedence scheme
using such a graph, it wouldn't even need to affect the final format of
their code. That scheme could just be a different lens onto the same
abstract syntax tree. Someone else looking at your code wouldn't have to
know that you see a different ordering.

(The global ordering doesn't actually bother me. I'm just throwing
ideas out there.)

On Wed, Sep 2, 2020 at 6:54 PM Jeffrey Brown <jeffbrown.the at gmail.com>
wrote:

> What if the global numeric precedence scheme was retained, but users could
> overlay their own precedence graph? The nodes in that graph could be the
> operators one wants to treat differently, plus the usual 10 precedence
> levels. It wouldn't have to be connected.
>
> On Wed, Sep 2, 2020 at 5:30 PM John Cotton Ericson
> <John.Ericson at obsidian.systems> wrote:
>
>> I definitely prefer this approach. I do not like absolutely levels,
>> whether natural numbers or fractional. At the end of the day, that's all
>> order-maintance for a *global* total preorder, and such a design will
>> always result in unforeseeable interactions between independently-developed
>> operators, not to mention increasingly ludicrously-precise fractions.
>>
>> This may sound like low-priority design pedantry, but I suspect (probably
>> because I myself was taught with scheme) that spooky-action-at-a-distance
>> precedence greatly harms beginning programmers, causing confusion or at
>> least delaying the understanding that expressions are arbitrarily deep
>> trees.
>>
>> John
>> On 8/17/20 12:12 PM, Carter Schonwald wrote:
>>
>> Oh yeah!
>> I feel like everyone’s wondered about that approach. But it definitely
>> would need some experiments to validate. But in some ways it’d be super
>> fascinating.
>>
>> On Mon, Aug 17, 2020 at 9:40 AM Henning Thielemann <
>> lemming at henning-thielemann.de> wrote:
>>
>>>
>>> On Sun, 16 Aug 2020, Carter Schonwald wrote:
>>>
>>> > I do think that the work needed to actually support fractional
>>> > precedence in ghc is pretty minimal.  Or at least I remember having a
>>> > conversation about it a few years ago, and the conclusion was that
>>> >  adding precedence would be super easy to do, but just lacked any good
>>> > motivating example from real libraries.
>>>
>>> I remember this discussion, too, and I guess that it was started by
>>> Simon
>>> Marlow and it ended with recalling that decades ago something more
>>> advanced was discussed: Groups of equal precedence and relations between
>>> the groups. But that one was too complicated to be implemented.
>>
>>
>> _______________________________________________
>> Libraries mailing listLibraries at haskell.orghttp://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>
>
> --
> Jeff Brown | Jeffrey Benjamin Brown
> Website <https://msu.edu/~brown202/>   |   Facebook
> <https://www.facebook.com/mejeff.younotjeff>   |   LinkedIn
> <https://www.linkedin.com/in/jeffreybenjaminbrown>(spammy, so I often
> miss messages here)   |   Github <https://github.com/jeffreybenjaminbrown>
>
>


-- 
Jeff Brown | Jeffrey Benjamin Brown
Website <https://msu.edu/~brown202/>   |   Facebook
<https://www.facebook.com/mejeff.younotjeff>   |   LinkedIn
<https://www.linkedin.com/in/jeffreybenjaminbrown>(spammy, so I often miss
messages here)   |   Github <https://github.com/jeffreybenjaminbrown>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20200902/10af3b04/attachment.html>


More information about the Libraries mailing list