首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Clojure 学习札记之when-not

2012-10-07 
Clojure 学习笔记之when-not在clojure中有if 但是没有unless,但是有对应的when-not,同样if与when相对。相比

Clojure 学习笔记之when-not

在clojure中有if 但是没有unless,但是有对应的when-not,同样if与when相对。相比于if与unless,when与when-not没有另外的条件不成立时的分支。因为按照英文的习惯没有人会说:when...else...。因此when和when-not后的body就可以包含很多的语句。因为when,与when-not是一个if主导的宏,然后把其后的body用do包装了起来。看看它的源代码(宏实现)就知道了,非常简单:

?

(defmacro when-not [test & body]      (list 'if test nil 'do body))
?

?

第一篇小文章很短,写的不好,见笑!

热点排行