Interested Article - Вычисления по короткой схеме

Стратегии вычисления
Строгие вычисления
Нестрогие вычисления
Недетерминированные стратегии
Другие

Вычисления по короткой схеме ( англ. short-circuit evaluation ), также известны как вычисления Маккарти ( англ. McCarthy evaluation , в честь американского информатика Джона Маккарти ) — это стратегия вычисления в некоторых языках программирования , при которой второй логический оператор выполняется или вычисляется только в том случае, если первого логического оператора недостаточно для определения значения выражения. Таким образом, после того, как результат выражения становится очевидным, его вычисление прекращается .

Примеры:

  • Если левый операнд AND имеет значение false , то общее значение выражения также false , независимо от значения правого операнда.
  • Если левый операнд OR имеет значение true , то общее значение выражения также true , независимо от значения правого операнда.

В общих словах, в выражениях вида либо вычисление продолжается слева направо, пока одно из не даст false или true соответственно. Наличие или отсутствие вычисления по короткой схеме особенно важно, если члены выражения — действия с возможными побочными эффектами (помимо вызова функций это может быть останов программы при делении на ноль или выходе за пределы массива). Например, код вида if (n != 0) and (k/n > 17) ... является корректным только, если язык (или компилятор) гарантирует вычисление по короткой схеме .

В языках программирования с ленивыми вычислениями ( Lisp , Perl , Haskell ) логические операторы используются по короткой схеме. В других ( Ada , Java , Delphi ) доступны как операторы по короткой схеме, так и стандартные логические операторы . Для некоторых логических операций, таких как исключающее «или» (XOR), вычисления по короткой схеме невозможны, потому что для определения результата всегда требуются оба операнда.

Примечания

  1. . Курганский государственный университет . Дата обращения: 30 марта 2023. 19 июня 2019 года.
  2. (англ.) . Carnegie Mellon University . 25 мая 2022 года.
  3. (англ.) . CodersLegacy . Дата обращения: 30 марта 2023. 3 октября 2022 года.

Ссылки

Источник —

Same as Вычисления по короткой схеме