Axcel писал(а):
to Прохоренко
По моему у Вас получилось хуже, громзче и не понятнее, 
Вы, наверное, сравниваете с лаконичными эквивалентными конструкциями, которые я сделал с помощью "запрещенных" в хорошем стиле программирования циклов LOOP и операторов BREAK. А Вы сравните с исходными конструкциями с циклами WHILE. Вот где можно голову сломать, особенно в схеме "линейный поиск" (
http://www.oberoncore.ru/wiki/%D0%BF%D0 ... 0%BE%D0%B2):
Код:
взять_первую_ситуацию;
WHILE ~конец_ситуаций & ~( ... условие поиска ..) DO
  ... возможно, но не очень часто встречается  - действие над текущей ситуацией ...
  взять_следующую_ситуацию
END;
IF ~конец_ситуаций THEN
  ... нашли, делаем что надо, с той ситуацией, на которой остановился цикл...
ELSE
  ... не нашли, делаем что-то, если нужно
END
Сделать что-то подобное безошибочно можно только, если иметь шаблон перед глазами.
Axcel писал(а):
хотя возможно здесь работают стереотипы.
Думаю, что как раз они и работают. Длинная форма оператора IF тоже, наверное, поначалу вызвала шок:
Код:
IF
  <первое условие>
THEN
  <первая последовательность операторов>
ELSIF
  <второе условие>
THEN
  <вторая последовательность операторов>
{ELSIF  <очередное условие> THEN <очередная последовательность операторов>}
ELSE
  <последняя последовательность операторов>
END;
А теперь, ничего, все пользуются.
Кстати, мой замысел заключается в том, чтобы вся шаблонная конструкция вставлялась в код одним щелчком мыши, а потом вместо заглушек с подсказками типа "<введите условие поиска>" программист бы вставлял требуемые условия и действия. При такой технологии громоздкость не имеет никакого значения, так как не приходится вбивать с клавиатуры каждый оператор. А главное, что улучшается читабельность кода.
Axcel писал(а):
Вообще говоря, многое (если не все), что вы предлагаете, так или  иначе реализовано в Алголе-68, но должен признать циклы у Вирта более "робастые"
А можно конкретный пример из Алгола-68?
Что такое "робастые"?
Насколько мне известно, Алгол-68 - вовсе не детище Вирта, а конкурирующий с ним продукт.