control flow constructs in the guise of expressions
and and or expressions are like control flow structures because they short-circuit.
and does not evaluate the right hand side if the left hand side is false.
or does not evaluate the right hand side if the left hand side is true.