-3
У меня есть две функции:Почему использование моей функции в качестве параметра для другой функции вызывает ошибку? Haskell
f1 :: Bool -> Int
f1 x
| x == True = 5
| x == False = 10
f2 :: Int -> Int
f2 x = x * 2
Поскольку выход f1 правильный вход для f2, как приходят
f2 f1 True
вызывает ошибку?
Я не знал, что помечать, поэтому теги могут быть неуместными.
Попробуйте 'f2 (f1 True)' или 'f2 $ f1 True'. – Jubobs
@Jubobs Не могли бы вы привести пример, где (f g) x - хорошо сформированное выражение, причем f и g оба являются функциями? – Arthur
@ Артур 'фильтр нечетный [1, 2, 3]' например. – sepp2k