我注意到在OCaml中我们可以使用像
这样的currying函数let add =
fun y -> (fun x -> x + y)
;;
但我的教授表示Java中不允许使用这种格式。例如,给定方法foo1,foo2执行时可以返回foo1。这是一个有效的解释吗?如果没有,是什么导致了Java和OCaml之间的这种差异?
int foo1(int a, ...) {
int foo2(...) {
//main body
}
}