有人能告诉我如何用语法-解析/大小写来写这个吗?
[(list e ...) #`(list #,(f #'e) ...)]
基本上,我希望列表中的每个元素都由f以非语法方式单独处理。我不认为上面的语法是正确的?
发布于 2018-12-13 04:10:55
您可以使用unsyntax-splicing (可以缩写为#,@)将列表返回表达式的结果嵌入到外部列表的单个元素中。然后可以使用map过程将f应用于(syntax->list #'(e ...))表达式返回的列表的所有元素。最后看起来会是这样的:
#`(list #,@(map f (syntax->list #'(e ...))))https://stackoverflow.com/questions/53738201
复制相似问题