方案中的原子是什么?

use*_*220 1 scheme

我认为'a应该是计划中的一个原子。但是,当我使用在线解释器并评估以下内容时,我会回来#f

(atom? 'a)
Run Code Online (Sandbox Code Playgroud)

use*_*lpa 5

Scheme标准没有定义atom?; 通常的定义是

(define (atom? x) 
  (and (not (pair? x))
       (not (null? x))))
Run Code Online (Sandbox Code Playgroud)

有了这个定义,

> (atom? 'a)
#t
Run Code Online (Sandbox Code Playgroud)

所以我认为您是正确的,而SISC在线REPL是错误的。

  • 鸡计划中的((atom?'a)`返回`#t`。因此,REPL可能是错误的。 (2认同)