Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.28 KB | None | 0 0
  1. ((juxe :a a :b b :c c) x) => {:a (a x) :b (b x) :c (c x)}
  2.  
  3. (defn juxe [& kf-pairs]
  4. (let [pairs (partition 2 kf-pairs)
  5. [ks fs] (apply mapv vector pairs)]
  6. (fn [x] (zipmap ks (map #(% x) fs)))))
  7.  
  8. => ((juxe :a inc :b dec :c -) 99)
  9. {:a 100, :b 98, :c -99}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement