null之间的区别?空的?在Scheme中

时间:2009-06-04 02:37:13

标签: scheme

Berkeley的“CS 61A第8讲:UI递归和迭代III”说明了这一点 空值?检查列表是否为空并且为空?检查列表是否为空或单词是否为空?讲师还接着说(null?empty)将返回false。但DrScheme完全不介意。

null之间有什么区别?空的?在Scheme?

4 个答案:

答案 0 :(得分:9)

没有区别(用我最喜欢的方言 - empty?不符合标准,而且由于我使用了任何不同的方言,它太长了;)......!引用PLT scheme docs

(null? v) → boolean?
  v : any/c

Returns #t if v is the empty list, #f otherwise.

(empty? v) → boolean?
  v : any/c

The same as (null? v).

答案 1 :(得分:4)

R5RS和R6RS都没有将empty?定义为谓词,并且都定义null?如下:

  

如果 obj 是空列表,则返回#t,否则返回#f

答案 2 :(得分:2)

你可以         (定义空?null?)         (定义空'())

答案 3 :(得分:0)

空?特定于PLT计划;它和null一样吗?。