While

(while (test) (expression)) -> #f

While creates a loop of expression, and stops that loop when test returns #f.

Example:

>> (define a 10)
:: #f
>> (while (> a 0) (write "foo") (set! a (- a 1)))
foofoofoofoofoofoofoofoofoofoo:: #f
>>

See Also: until