[Haskell-cafe] Fixity of ($) and (.) vs. (&) and (>>>)

Artem Pelenitsyn a.pelenitsyn at gmail.com
Sun Aug 5 08:59:59 UTC 2018

Hello Frederik!

Indeed, this sounds like a flaw. I don't think it can be easily fixed
though. E.g. I tried to recompile GHC with dumped fixity of >>>, as you
suggested. It failed short on the Arrow.hs file, complaining about the
definition of (|||) inside ArrowChoice:

f ||| g = f +++ g >>> arr

Likewise, many things will be broken by this change in many other places, I

Nevertheless, you could try to raise this question on the libraries mailing
list which is best suited for concerns like this, I believe:

Best, Artem

On Thu, 2 Aug 2018 at 23:55 Frederik Hanghøj Iversen <fhi.1990 at gmail.com>

> With function composition I can easily write something like
>     h . g . f $ expr
> However if I want to write the equivalent in left-to-right composition
> style:
>     expr & f >>> g >>> h
> This is not possible due to a parsing error arising from the fixity of the
> operators. (>>>) is provided by Control.Arrow and (&) by Data.Function. My
> question is, would it not be better to *decrement* the fixity of (&) by one
> or *increment* the fixity of (>>>) by one (probably rather the latter)?
> --
> Regards
> *Frederik Hanghøj Iversen*
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180805/73204cdb/attachment.html>

More information about the Haskell-Cafe mailing list