Lisp:在哪里可以找到 sbcl 的保留字符列表?

Wol*_*ine 0 lisp sbcl common-lisp reserved-words

有人能指出 Lisp 的保留字符列表吗?我正在尝试启动一些用于学习目的的重要程序。我能找到一个已经使用emacs存在的功能,但我无法找到的保留字符和字符串像一个汇总列表`,#\

大多数教程倾向于仅在它们适用于特定示例时才谈论它们,或者它们谈论高级表达式语法。

Rai*_*wig 5

你的意思是像 Common Lisp 中的符号不​​允许的字符?鉴于 SBCL 是 Common Lisp 语言的实现?

实际上几乎没有。如果您使用像,or 之类的字符/字符串#\,则可以对它们进行转义:

CL-USER 16 > '( | a A | |,| |#\\.| a\ \,\ )
(| a A | \, \#\\. A\ \,\ )

CL-USER 17 > (mapcar #'symbol-name *)
(" a A " "," "#\\." "A , ")

CL-USER 18 > (mapcar #'length *)
(5 1 3 4)
Run Code Online (Sandbox Code Playgroud)

此外,这里是默认 s 表达式阅读器中字符的概述:2.1.4 字符语法类型2.4 标准宏字符

请注意,Common Lisp 是在 Unicode 出现之前定义的。但是现在许多支持 Unicode 的实现也允许在符号中使用 Unicode“字符”。

* (list (code-char 300) (code-char 323) (code-char 812))
(#\LATIN_CAPITAL_LETTER_I_WITH_BREVE #\LATIN_CAPITAL_LETTER_N_WITH_ACUTE
 #\COMBINING_CARON_BELOW)
* (coerce * 'string)
"???"
* (make-symbol *)
#:???
Run Code Online (Sandbox Code Playgroud)