空リストはアトムかリストか?

() もアトムの一種である。

とのことだが、Racketで

> (list? '())

とやると

#t

と評価される。空リストはアトムかリストか、結局どっちだ?
ちなみにThe Little SchemerではS式がアトムかどうか判別する関数として

(define (atom? x)
  (and (not (pair? x)) (not (null? x))))

を読者に定義させている。これによるとアトムの定義は

  • ドット対でない かつ 空リストでない

となり、空リストはアトムから除外しているようだ。
よく分からないが、The Little Schemerで勉強している都合上、当面この定義に従うことにする。