CommonLisp:如何将URL包含为列表的一个元素?

CommonLisp:如何将URL包含为列表的一个元素?,lisp,common-lisp,Lisp,Common Lisp,我想创建一个包含URL的列表,如下所示: (setf assertion '(BookStore targetNamespace http://www.books.org)) 但这会导致此错误消息: Error in READ [or a callee]: There is no package with the name HTTP. 为什么URL会产生错误 如何将URL包含为列表的元素?不要将符号用作字符串,这不是一个好主意。只要使用字符串 (defvar *assertion* (lis

我想创建一个包含URL的列表,如下所示:

(setf assertion '(BookStore targetNamespace http://www.books.org))
但这会导致此错误消息:

Error in READ [or a callee]: There is no package with the name HTTP.
为什么URL会产生错误


如何将URL包含为列表的元素?

不要将符号用作字符串,这不是一个好主意。只要使用字符串

(defvar *assertion* (list "BookStore" "targetNamespace" "http://www.books.org"))

URL产生错误,因为:用于访问指定包中的符号,就像它对您说的那样。因此,您只是告诉编译器在名为“http”的包中查找符号“//www.books.org”,而没有具有此名称的包。

表达式
http://www.books.org
尝试在http中查找
//www.books.org
。有关软件包的更多信息,请阅读中的章节

您只需将该项作为字符串添加到列表中。

“函数”可能应该是“符号”。