Я только заметил, что (<$>) имеет фиксированность infixl 4. Как это может быть?
(+1) <$> (/5) <$> [5,10], очевидно, работает справа налево.
Ответ 1
Нет, <$> остается ассоциативным, и в вашем примере это не так. (+1) <$> (/5) <$> [5,10] читается как ((+1) <$> (/5)) <$> [5,10]. Это происходит из-за экземпляра Functor(->) a в основном эквивалентно составу функции; fmap (+1) (/5) эквивалентен \x -> (x/5)+1, который в этом случае дает вам тот же результат, что и вы, с тем, как вы думаете, что это работает, т.е. (+1) <$> ((+5) <$> [5,10]).
Так как это немного запутанно, если вы хотите применить несколько функций в строке, то, вероятно, лучше для чтения использовать обычный оператор композиции функций: (+1) . (/5) <$> [5,10].