有人可以指出我该如何用语法解析/大小写形式写这个吗?
[(list e ...) #`(list #,(f #'e) ...)]
基本上,我希望列表中的每个元素都由f
以不语法的方式进行单独处理。我不认为以上是正确的语法?
答案 0 :(得分:1)
您可以使用unsyntax-splicing
(可以缩写为#,@
)将返回列表表达式的结果嵌入到外部列表的各个元素中。然后,您可以使用map
过程将f
应用于(syntax->list #'(e ...))
表达式返回的列表的所有元素。最后,它看起来像这样:
#`(list #,@(map f (syntax->list #'(e ...))))