Попробую сюда добавить то, что хотел высказать ранее, но не успел. Контекст "того топика" полностью убрать не получается – приношу извинения. Надеюсь, затруднит прочтение не сильно.

Мне представляется, что статья Каратаева, является продуктом не сторонника GOTO, а противником возведения принципов структурного программирования в религию.
По-моему, это там прямо и указано.
В этом смысле, так я согласен с Автором. Не являясь в то же время фанатиком этого оператора.

Да, мы признаем большую важность плюсов привносимым изгнанием GOTO из ЯВУ. И мы понимаем, на какие жертвы нам приходится идти ради этих плюсов.
Это потеря эффективности. А в некоторых случаях – и понимаемости кода.
Такая точка зрения мне представляется правильной.

А если мы считаем, что всякий, не готовый к таковым жертвам, является "недоучкой", или безусловно "не умеющим программировать" – совершенно неправильная точка зрения.

Ровно так же, абсолютно неправы те, кто считает, что каждый язык обязан иметь GOTO. Дулю им с маком. Сторонники первого подхода имеют на него полное право, при своих условиях.

Продолжим аналогию с инструментами: есть шлямбур и молоток – ими можно как порезаться, так и расплющить пальцы. И есть электродрель... Или даже какая-то супер-пуперель. Которая великолепно и безопасно изготавливает отверстия. Даже пусть и мусор за собой подбирает. Одна незадача – точнее 5 мм отверстие не изготовишь. А так – ну все прекрасно.
Надо ли рвать рубаху на груди, заявляя, что использование шлямбура является мракобесием ???
Моя точка зрения – НЕТ. Не отрицая важности безопасной работы, можно утверждать о существовании серьезного круга задач, где точность нужна в 0.1 мм.

Правильная, как мне кажется, точка зрения: направить свои усилия вместо холивара, на совершенствование супер-пуперели, чтобы работала точнее шлямбура.
Не факт, что интеллектуальные усилия, потраченные на холивары про GOTO в мировом масштабе – окажутся меньше необходимых для "совершенствоания".
И есть интересное наблюдение: считающие, что "с GOTO абсолютно все ясно", про качество компиляции даже и слышать не хотят.
Ну вот, с ними я серьезно не согласен.


Обобщение: практически любое Знание является условным. Даже закон сохранения энергии.
Для изгнания GOTO – условие признания привносимых изгнанием минусов.
Абсолютизация любого знания не менее вредна, чем его отсутствие. Потому что получается религия. Практически с той же терминологий.
А что вредней: фанатизм ЗА GOTO, или фанатизм структурного программирования - не скажу даже. Любой не подарок.

Самую малость по конкретике в топике (последнем) про GOTO.
1) Не согласен, что если "хочешь GOTO – используй ассемблер". Никто не хочет GOTO, но все хотят результатов им достигаемых. Так вот я хочу, чтобы ЯВУ без GOTO давал результаты не хуже, чем с ним.

2) И место ему не только в ассемблере. Например, C считается "платформенно независимым ассемблером".

3) Предположим, чтоГеннадийзанимается генерацией кодов по ДРАКОН-схеме. Тогда он имеет полное право использовать как GOTO, так и другие, скажем так - фокусы.
Мое мнение: тот, кто скажет, что он только по этой причине не умеет программировать – есть человек необразованный. Не понимающий банального факта – что вся надежность ручного кодирования ему до лампочки. И, следовательно, плюсов от "изгнания GOTO" не остается, а минусы результирующему коду не нужны.

4) Ну предположим, я пишу компилятор компиляторов типа CocoR. Или вместо, по причине его неадекватности. Спрашивается, за каким лядом мне нужны преимущества изгнания GOTO в результирующем коде ???.
И чего делать, если семантики даны в Оберон-кодах. Вопрос для размышления. Над самым лучшим решением, а не над первым работающим.

В общем, как-то так: говорить о факте изгнания GOTO – преждевременно, пока его работу не заменили компиляторы. Это - выдавать желаемое (в т.ч. и мною), за действительное.

ВотИлья Евгеньевичпишет, что типа "а куда Дейкстре было деваться при том бедламе".
Да соглашусь просто. И добавлю, что прошло уже много десятилетий без видимых изменений в реализации "автоматного while-switch-case". Не одно, а МНОГО.
Что свидетельствует о том, что ВСЕ разработчики (компиляторов) его, адекватный на то время, компромисс - используют как решение проблемы с религиозным фанатизмом.
И не факт, что именно этого Дейкстра и хотел. Мое личное мнение: умный человек Дейкстра не мог хотеть религиозного фанатизма. Именно потому, что умный.

Резюме: что тут "абсолютно все ясно", и "наши победили" – не очень соответствует действительности.