clojure - 在 clojure 中,如何浏览函数列表?

标签 clojure

在 clojure 中,我想通过函数列表推送画眉值,但我不确定如何以惯用的方式这样做。我的想法是我将有一个包含未知数量函数的列表,我想利用 thrush 的可变参数特性。

所以,像这样...

(->> 1 inc inc inc)
; 4

(->> 1 '(inc inc inc))
; does not work, of course

最佳答案

reduce 在这种情况下做得很好

user> (reduce #(%2 %1) 1 [inc inc inc])
4
user> (defn thrush [val funs] (reduce #(%2 %1) val funs))
#'user/thrush
user> (thrush 1 [inc inc inc dec])
3

如果可能的话,在宏上使用函数来处理这些事情

关于clojure - 在 clojure 中,如何浏览函数列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14468669/

相关文章:

ClojureScript:如何通过原型(prototype)向 JS 对象添加方法?

clojure - 重用多方法的解构

clojure - 我可以获得命名空间的元数据吗?

java - 在 Clojure 中使用正则表达式和反向引用替换字符串

Clojure:Hiccup 表单处理程序

clojure - 保存后如何自动运行命令lein run?

performance - Clojure 应用程序启动性能

clojure - 使用有限域声明降序/升序坐标的谓词

clojure - 如何测试一段代码是否引用了Clojure中的宏?

emacs - 在 emacs 中选择一个 clojure 表单