Здравствуйте, bkat, Вы писали:
B>Здравствуйте, Kh_Oleg, Вы писали:
K_O>>Речь идет о таких ошибках, которые компилятор МОЖЕТ обнаруживать.
B>Какие ошибки может обнаруживать компилятор?
B>Их не так уж и много.
Зато какие!!! Тебе уже привели примеры на фортране и C++.
B>Я лично не очень верю в надежность программ, написанных на языках
B>с очень строгой типизацией.
Вера есть тогда, когда нет знания.

(сорри, если задел)
B>Да, в простых случаях (студенческие программы)
B>это может помочь. Но в реальной жизни на преодаление ограничений, накладываемые компилятором,
B>могут быть потрачены такие усилия, что вся надежность будет перечеркнута
B>и даже будет еще хуже.
В "реальной жизни" надо не торопиться сделать все "по-быстрому", а постараться понять, почему компилятор со строгой типизацией накладывает те или иные ограничения и переделать, (а случается, что и перепроектировать) программу так, чтобы не приходилось их преодолевать. Как правило, за каждым таким ограничением стоят многодневные обдумывания и обсуждения архитекторов языка. И в конечном счете программа, написанная без хаков, в долговременной перспективе оказывается более надежной.
B>Почему придется преодалевать эти ограничения? Да просто жизнь такая
B>Можно почитать форумы тут на RSDN и проследить, как много усилий тратиться на разные
B>хаки и трюки, которые, кстати говоря, очень часто вызывают восхищение и
B>считаются "красивыми" решениями.
Вот тот фундаментальный подход, о котором говорит Вирт, и который не всем кажется подходящим при обучении программированию, как раз и учит тому, как программировать без трюков и прочих "хрюков" и, в конечном счете, создавать
простые и надежные программы.