clojureの便利なif-let

if-letとwhen-letという便利なマクロの解説
http://blog.jayfields.com/2011/03/clojure-if-let-and-when-let.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+jayfields/mjKQ+(Jay+Fields+Thoughts)

(if-let [a ] )

が真ならその値をaにバインドして、を評価する。が偽ならを返す。


user=> (if-let [a 4] (+ a 4) (+ 10 10))
8

when-let

if-letと似ているがが無い。が偽の場合nilを返す。

元記事に沢山例がある。



こういうの凄く欲しい。というか、こういうフォームが作れるマクロシステムが羨ましい。