2

我认为这是一个非常微不足道的问题,但我还没有看到任何好的例子。我需要定义一个不带参数且始终返回 0 的 lambda 表达式。

我将如何定义一个不带任何参数并返回一些东西的 lambda 表达式?

4

3 回答 3

8

(lambda () 0) 有什么问题?

于 2013-06-25T22:56:15.133 回答
4

除了显而易见的答案之外(lambda () 0),许多 Scheme 实现都提供了一个const函数,该函数接受一个值并返回一个无论给出什么参数(或缺少参数)都返回该值的函数。

于 2013-06-25T23:09:17.950 回答
4
(define (always n)
  (lambda ignore n))

> (define always-0 (always 0))
> (always-0 10)
0
> (always-0 'a 'b' 'c)
0
> (always-0)
0
于 2013-06-26T14:07:56.487 回答