5

我正在使用http://rextester.com/runco​​de进行一些方案测试。

当我跑

(define x (cons 3 null))
(write x)

它有一个ERROR: Unbound variable: null.

如何在上述上下文中引用一个空列表?

4

3 回答 3

4
(define x (cons 3 '()))
(write x)

或者,您可以null先定义:

(define null '())
(define x (cons 3 null))
(write x)
于 2013-06-06T18:41:06.487 回答
1

在方案中,空列表是(),不是null。在其他 lisps 中,它也被称为nil.

于 2013-06-06T18:37:40.563 回答
-1

另一种选择只是用来list表示空列表。当不带参数调用时,它返回不带元素的列表:

(define the-empty-list (list))
(define x (cons 3 the-empty-list))
(null? the-empty-list)
于 2013-06-06T19:06:12.920 回答