performs conditional branching
(cond [pred then]*)
For each pred-then clause, the predicate will be evaluated, and if it is truthy (not #f (false) or the empty list) the then form is evaluated and returned, otherwise the next clause is processed.
(define x 99) (cond [(< x 50) "was less than 50" ] [(> x 100) "was greater than 100"] [:else "was in between" ])
In this case, “was in between” will be returned. The reason that this works is because the
:else keyword, like all keywords, evaluates to truthy.