ben böyle "önden" bir vektör destructure biliyorum:Bir clojure vektörünü son iki maddeye ve geri kalanına yıkmak mümkün mü?
(fn [[a b & rest]] (+ a b))
son iki öğe erişmek yerine herhangi (kısa) bir yolu var mı?
(fn [[rest & a b]] (+ a b)) ;;Not legal
Benim şu anki alternatif
(fn [my-vector] (let [[a b] (take-last 2 my-vector)] (+ a b)))
etmektir ve fonksiyon argümanları doğrudan daha uygun bir şekilde bunu yapmanın yolu olup olmadığını anlamaya çalışıyordum.
Daha önce rseq kullanmamıştım ve bu soru için mükemmel bir şekilde uyuyor. Zamanlama yaptım ve cevabımın performansına çok yakın. – WolfeFan