and
performs a short-circuiting and
Usage:
(and form*)
Evaluates forms from left to right. As soon as one evaluates to false, will return that value. Otherwise, it will proceed to evaluating the next form.
An Example
(and (+ 1 2 3)
false
"not returned")
Will return #f (false), never evaluating “not returned”, whereas:
(and (+ 1 2 3)
true
"returned")
Will return the string “returned”.