如何在Clojure函数中制作vector-fold和vector-map from scheme?
要映射向量并获得向量,您可以使用mapv。要折叠矢量,您可以使用常规reduce,因为矢量是可选的。要获得你正在迭代的函数的索引,有map-indexed或者你可以使用(range):
mapv
reduce
map-indexed
(range)
(mapv (fn [i e] [i e]) [1 2 3] (range)) => [[1 0] [2 1] [3 2]]