On this page:
when
unless

5.13 when and unless

(when expr expr)
The first expr (known as the “test” expression) is evaluated. If it evaluates to true, the result of the when expression is the result of evaluating the second expr, otherwise the result is (void) and the second expr is not evaluated. If the result of evaluating the test expr is neither true nor false, it is an error.

(unless expr expr)
Like when, but the second expr is evaluated when the first expr produces false instead of true.