[Haskell-cafe] Fixity of >>>

Ross Paterson ross at soi.city.ac.uk
Thu Jul 26 10:46:40 EDT 2007


On Fri, Jul 27, 2007 at 12:08:30AM +1000, Donald Bruce Stewart wrote:
> There's a theory this should work:
> 
>     getContents >>= lines >>> map read >>> sum >>> print
> 
> But unfortunately we have:
> 
>      `(>>=)' [infixl 1] 
>      `(>>>)' [infixr 1]
> 
> Meaning we must write:
> 
>     getContents >>= (lines >>> map read >>> sum >>> print)
> 
> Indeed, all Arrow ops are infixr. 
> Are there any technical/compelling reasons for this?

Not that I can recall.  But it's the precedence rather than the
associativity that's bothering you here.


More information about the Haskell-Cafe mailing list