11.1 while

The while special form tests whether the value returned by
evaluating its first argument is true or false. This is similar to what
the Lisp interpreter does with an if; what the interpreter does
next, however, is different.

In a while expression, if the value returned by evaluating the
first argument is false, the Lisp interpreter skips the rest of the
expression (the body of the expression) and does not evaluate it.
However, if the value is true, the Lisp interpreter evaluates the body
of the expression and then again tests whether the first argument to
while is true or false. If the value returned by evaluating the
first argument is again true, the Lisp interpreter again evaluates the
body of the expression.