The if and when constructs take one form as a test
and a clause that is executed when the test yields true.
The clause can be a value accumulation, unconditional, or
another conditional clause; it can also be any combination
of such clauses connected by the loop and keyword.
The loop unless construct is similar to the loop when construct
except that it complements the test result.
The loop else construct provides an optional component of if,
when, and unless clauses that is executed
when an if or when test yields false
or when an unless test yields true.
The component is one of the clauses described under if.
The loop end construct provides an optional component to mark the
end of a conditional clause.
For more information, see Conditional Execution Clauses.