【发布时间】:2020-07-05 11:10:08
【问题描述】:
我正在 SML 中对此进行试验
- val p = (fn (x,y) => x + y, fn (x,y) => x - y)
val p = (fn,fn) : (int * int -> int) * (int * int -> int)
但我一次只能评估一个
- #1(p)(3,2)
5
或
- #2(p)(3,2)
1
为什么我不能两者都做?
- (p)(3,2)
Error: operator is not a function [tycon mismatch]...
我需要什么准 lambda 演算形式让它返回一个 2 元组,第一个位置来自 x+y lambda 函数,第二个来自 x-y lambda 函数?乍一看,这就是它会做的事情。一般来说,我不知道这个例子中的变量和函数是什么。
【问题讨论】:
标签: tuples sml lambda-calculus