"blahfoobaz" 我没有找到比这个更好的方法: (-6ren">
gpt4 book ai didi

common-lisp - 处理普通 lisp 中的 &rest 参数

转载 作者:行者123 更新时间:2023-12-01 11:08:43 24 4
gpt4 key购买 nike

我想定义一个接受 &rest 的函数参数并将它们委托(delegate)给另一个函数。

(html "blah" "foo" baz) => "<html>blahfoobaz</html>"

我没有找到比这个更好的方法:

(defun html (&rest values)
(concatenate 'string
"<html>"
(reduce #'(lambda (a b)
(concatenate 'string a b))
values :initial-value "")
"</html>"))

但这对我来说有点笨拙,因为第 4 行只是连接 &rest 参数“values”。我试过 (concatenate 'string "<html>" (values-list values) "</html>")但这似乎不起作用(SBCL)。有人可以给我一个建议吗?

亲切的问候

最佳答案

(defun html (&rest values) 
(apply #'concatenate 'string values))

关于common-lisp - 处理普通 lisp 中的 &rest 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2633732/

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