replace ((fn [x y] ...) a b) with (let [x a y b] ...)