Новый в Haskell, я чувствовал, как :t
не хватает скобки для меня, чтобы правильно понять тип функцииОтсутствие скобок в интерпретации Haskell типа функции
, как это:
Prelude> :info flip
flip :: (a -> b -> c) -> b -> a -> c -- Defined in ‘GHC.Base’
Я мог бы сказать: flip
принимает одну функцию и возвращает другую функцию, заключая так:
flip :: (a -> b -> c) -> (b -> a -> c)
или я мог бы сказать, flip
является т принимая к одной функции и b
и a
и возвращающие элементы c
для довольно много типов функций у меня было такое чувство, я думаю, там должны быть какие-то правила, чтобы устранить эту неоднозначность
В чем ваш вопрос в точности? –