相关疑难解决方法(0)

多态类型的显式类型签名

我正在回顾Haskell:函数式编程的工艺,但是第356页的类型签名已经引发了我的循环.

这是一个简单的:

succeed :: b -> Parse a b
succeed val inp = [( val, inp )]
Run Code Online (Sandbox Code Playgroud)

怎么可能b -> Parse a b,如果

succeed Int -> Int
succeed a = a
Run Code Online (Sandbox Code Playgroud)

和,

succeed Int -> Int -> Int
succeed a b = a + b
Run Code Online (Sandbox Code Playgroud)

您在论证类型声明中的论据数量是多少?你怎么能采取val,并且imp,如果你的类型声明只有一个类型的变量:succeed :: b -> Parse a b应该是阅读,做类型的一个变量a并返回一个类型的Parse a b,用不了两个变量...是哪里inp允许?

haskell

3
推荐指数
1
解决办法
330
查看次数

标签 统计

haskell ×1