我错过了LISP中符号的一些重要事实吗?

时间:2011-12-02 15:25:51

标签: lisp common-lisp

这样做的正确方法是什么?

(defparameter form1 (list 'baz "hello"))
(setf (car form1) (intern "print"))
(eval form1)

||有什么意义(实习生)使用?
#:||的意义是什么? (make-symbol)使用?

如果它们只是名称的一部分,那么创建一个与我指定的符号不同的符号的理由是什么?

更新 (实习生" PRINT") 作品

1 个答案:

答案 0 :(得分:5)

竖条是符号的引号。您在源代码中输入的符号不会使用它们,因为读者将它们转换为全大写,并且不需要引用全大写符号。

前面的#:表示不间断的符号,即不属于任何包的符号。 intern将符号放入当前包中。只打印当前包装的符号而没有包装名称。