(列出lambda lambda)

use*_*893 3 syntax scheme

如果我这样做,我会得到什么样的东西?

(car (list lambda lambda))
Run Code Online (Sandbox Code Playgroud)

我以为我会lambda回来,这意味着我可以做到

(define my_lambda (car (list lambda lambda)))
(define foo (my_lambda (n) (+ n n)))
Run Code Online (Sandbox Code Playgroud)

但那没用!谢谢,

Ósc*_*pez 5

lambda是一种特殊形式(意思是:标准评估规则不适用于它),是语言的核心原语的一部分,而不是可以赋给变量的符号或其他类型的值.

回答你的问题,评估表达式后你会得到的"那种东西" (list lambda)将取决于你正在使用的Scheme解释器,但通常你会得到一个错误.例如,DrRacket抱怨如下:

lambda: bad syntax in: lambda
Run Code Online (Sandbox Code Playgroud)