Haskell中的中缀函数是否有类型表达式?

时间:2018-03-26 08:42:15

标签: haskell

例如,++本质上是一个函数。我希望当我输入:t ++:t prefixName时我会获得一个类型表达式,但是我收到一个解析错误。是++的前缀还是有一种特殊方法可以为中缀函数调用:t

1 个答案:

答案 0 :(得分:12)

是的,中缀函数是函数,但要将它们与:t一起使用,您需要将其写为普通前缀函数:

:t (++)

给出了

(++) :: [a] -> [a] -> [a]

这是haskell语法的一部分。要将中缀函数转换为前缀,请用parens包围它,例如,

(+) 1 2

相当于

1 + 2 

相反,正常的前缀函数可以通过包围它来使用 用反引号,例如,

reverse `map` ["hello","world"]

相同
map reverse ["hello","world"]