Short Circuiting Logical AND Operator (&&?)

The short circuiting logical AND operator evaluates its operands as boolean values. If both operands evaluate to TRUE, then the resulting value is TRUE (1). Otherwise, the result is FALSE (0).

The first operand is evaluated first. If it evaluates to FALSE, then the result of the operation must be FALSE, and so the operation is short-circuited and the second operand is not evaluated at all.

This behaviour is useful if the second operand could generate an error. For example, the following code checks whether the first character of a string is an underscore:

IF WIDTHOF(str) > 0 &&? str[0] = "_" THEN
  PRINT("String '", str, "' starts with an underscore\n");
END;

If the && operator were used instead, this code would generate an error if str were an empty string.