我有一个很大的全局变量列表,每个变量都有自己的设置功能.我的目标是遍历此列表,调用每个项目的设置函数,并生成匹配变量中加载的数据的一些统计信息.但是,我现在正在尝试的是不工作,我需要帮助才能使我的程序调用设置功能.
全局变量及其设置函数区分大小写,因为它来自XML,并且是唯一性所必需的.
数据看起来像这样:
'(ABCD ABC\d AB\c\d ...)
并且设置功能如下所示:
(defun setup_ABCD... (defun setup_ABC\d...
我已经尝试将它们连接在一起并将结果字符串转换为函数,但这会干扰先前加载的设置函数的命名空间.以下是我尝试实现的方法:
(make-symbol (concatenate 'string "setup_" (symbol-name(first '(abc\d)))))
但使用funcall
此功能不起作用.如何从中获得可调用的函数?
这是因为MAKE-SYMBOL返回一个未加载的符号.你应该使用INTERN.