Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Functional programming 类型检查与类型推断_Functional Programming_Type Inference_Typechecking_Lambda Calculus_Typed Lambda Calculus - Fatal编程技术网

Functional programming 类型检查与类型推断

Functional programming 类型检查与类型推断,functional-programming,type-inference,typechecking,lambda-calculus,typed-lambda-calculus,Functional Programming,Type Inference,Typechecking,Lambda Calculus,Typed Lambda Calculus,有人能解释类型检查和类型推断问题之间的区别吗 我试图寻找差异,但我找不到任何令人信服的来源来清楚地解释这种差异。如果可能,还包括示例。给定代码: (定义(总和lst) (如果(空?lst) 0 (+(车辆lst) (总和(cdr lst(()))) 关于lst必须是什么或返回类型,您有什么意见吗?编译器也可以这样做,它将被称为类型推断 类型检查是检查代码中指定或推断的类型。如果代码中有不一致之处,或者不清楚是否加起来,那么它将失败

有人能解释类型检查类型推断问题之间的区别吗

我试图寻找差异,但我找不到任何令人信服的来源来清楚地解释这种差异。如果可能,还包括示例。

给定代码:

(定义(总和lst)
(如果(空?lst)
0
(+(车辆lst)
(总和(cdr lst(())))
关于lst必须是什么或返回类型,您有什么意见吗?编译器也可以这样做,它将被称为类型推断

类型检查是检查代码中指定或推断的类型。如果代码中有不一致之处,或者不清楚是否加起来,那么它将失败