Lambda演算到方案
Lambda calculus to scheme
以下是将 lambda 函数的外观“映射”到它在方案中的编写方式的正确方法吗?
(λx.x+1) 5 ↦ (lambda (x) (+ x 1) 5)
此外,lambda 函数 'named' 的形式化表示法如何?有没有对应的东西:
加一 = (λx.x+1)
(λx.x+1)5 是参数 5 的 application。在 Scheme 代码中这将是相当于:
((lambda (x) (+ x 1)) 5)
这里的 (lambda (x) (+ x 1))
构成函数,必须将其放在函数调用上下文中,方法是将其用参数括在括号中。
就正式符号命名而言,这不是 lambda 演算本身的特征。在文本中,经常会发现某种标识符符号被用来方便组合的表达;在这些情况下,似乎通常首选非常简单的标识符。这实际上是数学符号,而不是编程符号。这两个我都看过:
A ≡ λx.x+1
A = λx.x+1
以下是将 lambda 函数的外观“映射”到它在方案中的编写方式的正确方法吗?
(λx.x+1) 5 ↦ (lambda (x) (+ x 1) 5)
此外,lambda 函数 'named' 的形式化表示法如何?有没有对应的东西:
加一 = (λx.x+1)
(λx.x+1)5 是参数 5 的 application。在 Scheme 代码中这将是相当于:
((lambda (x) (+ x 1)) 5)
这里的 (lambda (x) (+ x 1))
构成函数,必须将其放在函数调用上下文中,方法是将其用参数括在括号中。
就正式符号命名而言,这不是 lambda 演算本身的特征。在文本中,经常会发现某种标识符符号被用来方便组合的表达;在这些情况下,似乎通常首选非常简单的标识符。这实际上是数学符号,而不是编程符号。这两个我都看过:
A ≡ λx.x+1
A = λx.x+1