Ответ 1
Функция, которую вы ищете, map
.
(map + [1 2 3 4] [10 20 30 40] [100 200 300 400])
;=> (111 222 333 444)
Обратите внимание, что map
возвращает ленивую последовательность, а не вектор, как показано в вашем примере. Но вы можете вылить ленивую последовательность в пустой вектор, используя функцию into
.
(into [] (map + [1 2 3 4] [10 20 30 40] [100 200 300 400]))
;=> [111 222 333 444]
Кроме того, (для полноты, как указано в другом ответе) в Clojure 1.4.0+ вы можете использовать mapv
(с теми же аргументами, что и map
), чтобы получить векторный результат.