RosettaCodeData/Task/First-class-functions-Use-numbers-analogously/Clojure/first-class-functions-use-numbers-analogously-1.clj
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

16 lines
278 B
Clojure

(def x 2.0)
(def xi 0.5)
(def y 4.0)
(def yi 0.25)
(def z (+ x y))
(def zi (/ 1.0 (+ x y)))
(def numbers [x y z])
(def invers [xi yi zi])
(defn multiplier [a b]
(fn [m] (* a b m)))
> (for [[n i] (zipmap numbers invers)]
((multiplier n i) 0.5))
(0.5 0.5 0.5)