when-and和两层when哪个快一点?

我是抱着被喷死的觉悟来的:

when-and:

(when (and (条件1)
           (条件2))
  (body))

两层when:

(when (条件1)
  (when (条件2)
    (body)))

我当然知道他俩是有区别的……但是如果忽略这些区别的话 吹毛求疵的讲,哪个快一点?

http://nullprogram.com/blog/2009/05/28/

自己测。编译后和编译前是有差别的,同个表达式运行时间也会浮动。

估计没差别。

估计差别不大,第二种难看而已

另外, emacs 中文社区还是非常友好的, 除非你作死找抽, 一般没人喷你.

实际上不到万不得以一般我不爱用第二种…… 我会使用第二种无非是因为这种情况:

(when (条件1)
  (foo1)
  (foo2)
  (when (条件2)
    (bar1)
    (bar2)))