假设我有一个函数
CL-USER> (defun trimmer (seq) "This trims seq and returns a list"
(cdr
(butlast seq)))
TRIMMER
CL-USER> (trimmer '(1 2 3 VAR1 VAR2))
(2 3 VAR1)
CL-USER>
请注意,由于 QUOTE,VAR1 和 VAR2 未解析。假设我想将符号 VAR1 和 VAR2 解析为其值 - 是否有标准函数可以执行此操作?
不使用quote
创建一个包含变量的列表;使用list
反而:
CL-USER> (trimmer (list 1 2 3 var1 var2))
(2 3 value-of-var1)
(where value-of-var1
的值是var1
).
Quote
只会阻止对其参数进行评估。如果它的参数恰好是列表文字,则返回它。但是,要创建不仅仅是文字的列表,请使用list
. You can使用反引号语法,但在这种情况下这相当混乱。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)