Common Lisp:所有功能都是从核心功能、CAR、CDR、CONS 等构建的吗?

Common Lisp: Are all functions built from the core functions, CAR, CDR, CONS, etc?

对还是错?

Common Lisp 拥有堆积如山的函数。所有这些函数都是使用这一小组核心函数构建(或可以构建)的:CAR、CDR、CONS、ATOM、EQ、QUOTE、COND、LAMBDA、LABEL、NULL。

如果答案为False,能否举例说明无法使用核心函数实现的函数?也许核心功能列表不完整,需要另外或两个额外的核心功能?

[..] All of those functions are built (or could be built) using [..]

重要的部分是可以,您自己已经弄明白了。 Lisp 的(几乎*)所有(a)都可以使用那小组核心功能(形式)来构建,这是 Lisp 之美的一部分。但在实践中,未在 Lisp 中实现的函数集(形式)要大 很多

当实现只能实现最小的核心时,为什么还要费心去实现那么多?举个小例子,想想这个表达式:

(+ 1 2)

可以实现一个仅使用一小部分核心函数的 Lisp,并且它能够(为数字提供适当的解析器)计算此表达式。 但这会非常慢! 我们可用的系统 (CPU) 大多提供许多不同的指令,Lisp 实现(尤其是编译器)试图尽可能多地利用这些指令为了允许快速执行 Lisp 程序。并且,回到这个例子,这也意味着人们不会使用 peano arithmetic 进行实际计算,而是使用在硬件中实现的 "boolean logic arithmetic"。

If the answer is False, can you provide an example of a function that cannot be implemented using the core functions?

这很简单,您是如何实施的 format?任何不属于编程语言 "algorithmic" 性质的东西,即与 "outside world" 接口的东西,通常不会在其自身中实现,而是 - 依赖于底层系统 - 通常在 C 或汇编中.

错误。任何处理 conses 以外的数据类型的函数都不能从您建议的核心集中实现:例如根本无法处理 NUMBERSYMBOL 等重要类型。 I/O 类似的任何功能,可能还有其他广泛的语言。

您的列表听起来像是来自对 Lisp 1.5 拟议核心的一些不完整描述。