1
我有一個轉置功能,對於固定arities轉列出的Clojure的列表
(defn transpose [a b c]
(map list a b c))
(transpose '(1 2 3) '(4 5 6) '(7 8 9))
((1 4 7) (2 5 8) (3 6 9))
(apply transpose (list '(1 2 3) '(4 5 6) '(7 8 9)))
((1 4 7) (2 5 8) (3 6 9))
但我怎麼能概括這個爲n個參數,所以我如下可以調用它的工作原理:
(transpose '(1 2) '(4 5))
(transpose '(1 2 3) '(4 5 6) '(7 8 9))
...
我覺得我需要像下面這樣的東西
(defn transpose [& xs]
(apply (map list) xs))
但我不能得到它的工作。