Почему операторы «не больше / меньше» (например, «!>» Или «! <») Не используются в большинстве языков программирования - PullRequest
0 голосов
/ 22 февраля 2019

Я понимаю, что вы можете получить то же поведение, используя <= или !(x > y), но я обычно предпочитаю с точки зрения не больше вместо меньше или равно ,поэтому иметь что-то вроде !> и !< на самом деле было бы очень удобно для меня и идеально соответствовать оператору !=.

Синтаксис !(x > y) требует больше символов и читает: not: x больше, чем y , что неудобно и очень не похоже на естественную речь.

Я никогда не видел!< или !> операторы в любом месте, но с тех пор, как я начал программировать, меня интересует, почему они не поддерживаются.Есть ли причины, по которым нет?

1 Ответ

0 голосов
/ 23 февраля 2019

Использование наименьшего количества логических операторов и операторов сравнения, а тех, которые наиболее близки к классической математике и логике, упрощает анализ условий.

Существовали языки программирования, такие как Natural и COBOL, с такими операторами, как НЕ МЕНЬШЕ , но рассуждать о (a !< b) при размышлении над сложным состоянием гораздо сложнее, чем !(a < b), что эквивалентно (a >= b).

Пример:

!(!(a < b) && !(a > c))

Эквивалентно:

!((a >= b) && (a <= c))

, что означает:

(a < b) || (a > c)

Ничего не выиграет от !((a !< b) && (a !> c))?

...