穿过函数向量

mur*_*a52 5 clojure

我有一个函数向量(def my-func [a b c d]).每个函数都将最后一个函数的输出作为输入.我想通过它们来输入一个输入,我该怎么做?

我如何获得以下表格(-> in a b c d)

谢谢,穆尔塔扎

M S*_*ith 6

您可以使用comp但请注意它执行从右到左的功能

((comp d c b a) 10)
Run Code Online (Sandbox Code Playgroud)

要么

((apply comp my-fns) 10)
Run Code Online (Sandbox Code Playgroud)

将10传递给第一个函数,结果传递给下一个函数,依此类推.


Dan*_*ero 5

我想你可以使用这个reduce功能:

(def fns [inc inc inc])
(reduce (fn [v f] (f v)) 10 fns)
Run Code Online (Sandbox Code Playgroud)