As linguagens de programação em geral apresentam operadores booleanos binários, denotados por || e &&, no qual a avaliação do segundo operando somente é processada se necessário. Estes operadores estão presentes em diversas linguagens de programação, tais como: C, C++ ou Java. A semântica destes operadores é: se E1 é verdadeiro, então a expressão E1 or E2 também é verdadeira; E2 não é avaliado. Similarmente, se E1 é falso, então E1 and E2 é falso; E2 também não é avaliado. A avaliação feita por estes operadores é chamada: