11.1 while

while 特殊形式会判断其第一个参数求值结果是否为真。 这与 Lisp 解释器处理 if 的方式类似; 但后续行为有所不同。

while 表达式中,如果第一个参数的求值结果为假, Lisp 解释器会跳过表达式剩余部分(即表达式体),不再执行。 反之,如果结果为真,解释器会执行表达式体, 然后再次判断 while 的第一个参数是否为真。 若仍为真,则再次执行表达式体。

while 表达式的结构如下:

(while true-or-false-test
  body...)