Вы можете сделать то, что предлагает peoro, и он отлично работает.Однако я бы посоветовал против этого.Обычный способ «прочесть» Haskell подобен предложению - слева направо, с глаголами в начале и темой в конце.Обычно вы получаете цепочечную композицию типа f . g. q . r $ x
.С монадическими операторами вы получаете f =<< g =<< x
(или (f <=< g) =<< x
), а с аппликативными - f <$> x <*> y <*> z
.Так что изменение нормального порядка вещей не обязательно идиоматично.
Кстати, причина того, как я слышал, что F # выбрал противоположный оператор, заключается в том, что он очень хорошо работает с автозаполнением visualstudio - есливы ввели значение, с которым работаете, и его тип может определять варианты действий с ним.Такая поддержка инструментов является великолепной, и это было бы хорошим аргументом для принятия альтернативного стиля.