Lisp :( A(BC)),为什么1个列表和1个原子?

use*_*415 1 lisp syntax list parentheses

我正在学习Lisp,我不理解他们在解释列表原子的课程中给出的一些例子.

我明白 :

  • (AB):1个列表,2个原子
  • (ABC):1个列表,3个原子

我不明白这一部分:

  • (A(BC)):1个列表,1个原子

经过深思熟虑之后,我认为:

  • A是原子,(BC)是列表,但我不明白为什么......

    • 为什么第一个和最后一个括号不被视为一个列表?
    • 为什么我们不把B和C算作原子呢?

在此先感谢对这个奇怪的事情的任何启发:)

Ósc*_*pez 7

我说答案是错的.为了与之前的答案保持一致,它应该是:

  • (A(BC)):2列表,3个原子

原因如下:总共有三个原子:A B C.有一个嵌套列表:(B C)和一个外部列表:(A (B C))总共两个列表.

这将会是正确地指出,有"1个单,1个原子"如果问题是"算顶级元素内部名单" -但是这不是与前两个例子,其中考虑到所有原子一致,显示的列表,包括外部列表.