суббота, октября 08, 2005

Эдсгер Дейкстра "Оператор go to вреден"

Классическая работа 1968-го года Go To Statement Considered Harmful.

"В течение нескольких лет я знаком с точкой зрения, что качество программистов это убывающая функция от плотности операторов go to в коде, который они пишут. Недавно я понял почему использование оператора go to имеет такой катастрофический эффект, и теперь я убежден, что оператор go to следует убрать из всех языков программирования "высокого уровня" (то есть из всех за исключением, возможно, машинного кода)..."

Technorati tag:

3 коммент.:

Анонимный комментирует...

"за исключением, *возможно*, машинного кода"

мдааа… Это ж надо было так выразиться. Что, писать в Intel, чтобы они отменили инструкцию JMP? :)

параноя…

icestudent

TheBits комментирует...

>> за исключением, *возможно*, машинного кода
Присоеденяюсь к icestudent.
Это выражение идёт в противоречие с так называемой архитектурой Неймана. (Джон фон Нейман) Которая в своё время дала сильный толчек для создания компьютеров (арихтектуры) в таком виде, какие они сейчас.
Заключалось это в том что он вывел положения о том что команды и данные должны быть вместе, команды должны выполняться последовательно с возможностью переходов.

Rembo комментирует...

Оператор goto полезен в VBA - там нету оператора continue для перехода в начало цикла. Если в VBA добавить оператор continue и изменить систему обработки ошибок - goto можна убирать.