gpt4 book ai didi

list - LISP:力评估

转载 作者:太空宇宙 更新时间:2023-11-03 18:59:23 25 4
gpt4 key购买 nike

我将列表名称作为带有单引号 (') 的输入,但在执行了一些操作之后,我想实际评估它而不是将其视为一个原子。

例如,为了简单起见,我有以下列表:

(setf LT '(A B C))

我有一个名为 SEP 的函数。要运行该函数,我必须将其作为 (SEP 'LT) 运行。因此,正如您所见,LISP 会将 LT 解释为一个原子,而不是将其评估为一个列表,这不是我想要的。

从本质上讲,我希望 (SEP 'LT) 以某种方式真正成为 (SEP '(A B C))

输入格式无法更改。任何帮助,将不胜感激。谢谢!

最佳答案

如果 LT 是一个顶级变量,用 defvar 定义,那么你可以用 symbol-value 获取它的值,如下所示:

* (symbol-value 'lt)
(A B C)

* (defun sep (name)
(assert (symbolp name))
(let ((value (symbol-value name)))
...

关于list - LISP:力评估,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15962338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com