为什么 NULL 在 CWEB 中表示为 Lambda?

为什么 NULL 在 CWEB 中表示为 Lambda?

当我使用NULL在 CWEB 文档中使用时,它\Lambda在输出中被排版为 Λ ( ) cweave。事实上,我看到了\let\NULL=\Lambdacwebmac.tex为什么这是默认设置?

当我第一次看到这个符号时,我感到很困惑——我意识到它的意义NULL仅仅是由于上下文,而不是符号本身。

虽然我不太确定这个问题是否适合这里,但我在谷歌上用“NULL Lambda CWEB”找到的唯一结果是关于 AWS Lambda 的。

答案1

\LambdaKnuth在他的系列书中使用了代表空链接 (nil)的约定计算机编程艺术在第1卷第2.1节(第2章“信息结构”的介绍)第234页中,他写道:

...;我们使用大写希腊字母 Lambda 来表示空链接,没有指向任何节点的链接。

因此,他从 20 世纪 60 年代起就一直使用这一惯例。

相关内容