评估 Clojure 中的函数列表
Evaluate a list of functions in Clojure
我有一个函数列表,这些函数没有副作用并且采用相同的参数。我需要评估列表中的每个函数并将结果放入另一个列表中。 Clojure 中是否有一个函数可以做到这一点?
juxt
应该这样做:
((juxt inc dec) 1)
=> [2 0]
(如果您确实有一个函数列表并且想要一个结果列表,请按照注释中的说明执行 (apply list ((apply juxt (list inc dec)) 1))
。)
(map #(% arg) function-list)
应该做这份工作吗?
(map apply [+ - * /] (repeat [1 2 3 4]))
=> (10 -8 24 1/24)
我有一个函数列表,这些函数没有副作用并且采用相同的参数。我需要评估列表中的每个函数并将结果放入另一个列表中。 Clojure 中是否有一个函数可以做到这一点?
juxt
应该这样做:
((juxt inc dec) 1)
=> [2 0]
(如果您确实有一个函数列表并且想要一个结果列表,请按照注释中的说明执行 (apply list ((apply juxt (list inc dec)) 1))
。)
(map #(% arg) function-list)
应该做这份工作吗?
(map apply [+ - * /] (repeat [1 2 3 4]))
=> (10 -8 24 1/24)