
Dear Cafe - operators <$> and <*> have their precedence so that this (silly example) works without parens: (,) <$> "foo" <*> "bar" Most of the time, I find that the function (the first argument) is the largest sub-expression, so I want to put it last. I can do this import Control.Lens.Lens ((<&>)) "foo" <**> ( "bar" <&> (,) ) but (even ignoring that this pulls in a library with a ton of dependencies) this needs parens, and I find this quite ugly when the closing parenthesis comes at the end of lambda expression that spans several lines. One work-around is ( "foo" <**> ) $ "bar" <&> (,) Can this be done in a less noisy way? - J.W. PS: Bike-sheddingly, shouldn't this (<&>) be defined right next to (<$>) ? There's nothing that would tie it to lenses? And, (&) right next to ($) ?