キーと値のリストからマップを作りたいです。

((:a 1) (:b 2))

このリストをマップにしたい。

{:a 1, :b 2}

以下のようにして結果は得られたのですが、もっとこう簡単に、またClojureらしい方法があるのではないかと思いました。

(apply merge (map #(apply assoc {} %) '((:a 1) (:b 2))))

よりよい方法があれば教えてください。

よりよいと考える理由も教えてください。

僕の方法がよくないのではないかと考える理由は効率です。リストの要素ごとにキーひとつだけのマップをまず作り、それからひとつのマップにまとめています。