符号所生产实习生
问题描述:
这里是一个代码段:符号所生产实习生
CL-USER> (setf (symbol-value (intern "foo")) 98)
98
CL-USER> foo
; Evaluation aborted on #<UNBOUND-VARIABLE FOO {1003FC6213}>.
CL-USER> |foo|
98
通过intern
创建的符号具有在前端和末端我创建的符号的"|"
。但在this answer中,foo
被设置为符号的名称,而不是|foo|
。那么,为什么会发生这种情况?
答
(intern "foo")
出现为|foo|
,因为实习生区分大小写。
看到你在链接到(intern "FOO")
是大写的答案。
答
请注意,不是符号的一部分。这只是一个用于转义封闭符号的字符对。这可以确保读取符号时使用字符的确切大小写。