我有以下LISP代码
(defun l (x y) (list x y))
Run Code Online (Sandbox Code Playgroud)
当我这样做时,(l a a)我得到A没有价值的错误.
我希望这回来(aa).我怎么能克服这个?
我想你的意思是你需要一个"符号"列表.当符号绑定到某个值时,它就变成了一个变量.您可以通过在将l函数传递给函数时"引用"符号来执行此操作:
(l 'a 'a)
Run Code Online (Sandbox Code Playgroud)
推荐阅读:http://www.gigamonkeys.com/book/syntax-and-semantics.html