【发布时间】:2026-01-25 04:35:01
【问题描述】:
(这是其中一件看起来应该很简单的事情,我想可能会有更好的方法)
我正在尝试定义一个宏(用于 CLISP),它接受可变数量的参数作为符号(然后将其转换为区分大小写的字符串)。
(defmacro symbols-to-words (&body body)
`(join-words (mapcar #'symbol-name '(,@body))))
将符号转换为大写字符串,而
(defmacro symbols-to-words (&body body)
`(join-words (mapcar #'symbol-name '(|,@body|))))
将 ,@body 视为单个符号,不进行扩展。
有什么想法吗?我认为可能有一个更简单的方法。
【问题讨论】:
标签: string common-lisp symbols case-sensitive