11.1 while
特殊形式 while
用于测试通过评估其第一个参数返回的值是否为真或假。这类似于Lisp解释器对 if
的处理方式;然而,解释器接下来的操作有所不同。
在 while
表达式中,如果通过评估第一个参数返回的值为假,Lisp解释器将跳过表达式的其余部分(表达式的 主体)并不予以评估。然而,如果该值为真,则Lisp解释器将评估表达式的主体,然后再次测试 while
的第一个参数是真还是假。如果通过评估第一个参数返回的值再次为真,Lisp解释器将再次评估表达式的主体。
while
表达式的模板如下:
(while true-or-false-test
body…)