Блин, во вы тут дебаты дебачите...
На сколько я знаю, Вальдемарыч преследовал несколько целей в языке.
Но две - самые важные.
1: Язык должен быть семантически близко похожим на разговорный
2: Не должно быть неоднозначностей.
Понятное дело, что человек кодировал не для себя в большинстве, а для студентов. А семантически близкий к разговорному легче донести до аудитории...
Код: "OBERON"
ПРОЦЕДУРА Сумма():ЦЕЛОЕ;
ПЕРЕМЕННЫЕ
r: ЦЕЛОЕ;
НАЧАЛО
r := 0;
ОТ i:=0 ДО 10 ПОВТОР
НАЧАЛО
r := r + i;
КОНЕЦ ПОВТОР;
РЕЗУЛЬТАТ r;
КОНЕЦ Сумма;
Ну вот если в одну строку то:
Код: "OBERON"
ПРОЦЕДУРА Сумма():ЦЕЛОЕ; ПЕРЕМЕННЫЕ r: ЦЕЛОЕ; НАЧАЛО r := 0; ОТ i:=0 ДО 10 ПОВТОР НАЧАЛО r := r + i; КОНЕЦ ПОВТОР; РЕЗУЛЬТАТ r; КОНЕЦ Сумма;
Вот согласитесь, даже некоторые ту@бни-школьники и те поймут с грехом пополам что происходит!
Поэтому нет в Виртовских языках нужных и не нужных конструкций.
У сишников и мышление то даже не машинное, а чисто механическо-интуитивное, то есть программирование для них - это система и набор команд-символов и писать надо на машинном языке, когда как у паскалистов - интуитивно-логическое, то есть писать что ты хочешь от машины на семантически человеческом языке...
Ну с неоднозначностями понятно...
Кстати, Вирт и доказал, что процессорная техника развививается не в сторону оптимизаций, а в сторону наращивания мощьностей, поэтому линейный поиск в его последних компиляторах работает быстрее (или так же) бинарного (нонсес однако), от этого он не особо мудрит с конструкциями языка, да и мудрить то нечего пока не будут менять архитектуру процессоров...