菜鸟在这里。我不确定是否每个函数都应该被柯里化(但这就是我的感觉)。
如果确实如此,那又是怎么回事
(,) 1
Run Code Online (Sandbox Code Playgroud)
抛出错误?它不应该返回一个函数,当应用于另一个值时会给出一个元组吗?
Sim*_*ine 14
怎么会
(,) 1抛出错误?它不应该返回一个函数[...]吗?
这两个都可以是真的。
?> let f = (,) 1 in f 2
(1,2)
Run Code Online (Sandbox Code Playgroud)
但是由于函数没有Show实例,只是键入(,) 1 确实会引发错误:
?> (,) 1
<interactive>:4:1: error:
• No instance for (Show (b0 -> (Integer, b0)))
arising from a use of ‘print’
(maybe you haven't applied a function to enough arguments?)
• In a stmt of an interactive GHCi command: print it
Run Code Online (Sandbox Code Playgroud)