Вообще авторы Оберона вовсе не отрицают пользы родовых типов. Тот же Szyperski сделал пробную реализацию в 97. Просто там где применялся Оберон они не требовались. Сейчас "параметризированные типы" введены в OOC.
Исключений опять же никто не отрицает. Вирт утверждал, просто, что они не должны поминаться всуе, а применяться только для того, для чего предназначены. А посему реализовываться в библиотеках, а не встраиваться в язык.
PROCEDURE Main;
PROCEDURE Handler (VAR e: SomeException);
BEGIN
IF … the failure can be repaired … THEN
…Repair it…;
Exceptions.Resume (* return using resume semantics*)
END;
(* return using terminate semantics*)
END Handler;
BEGIN
...
Exceptions.Raise(e);
...
END.
GIV>Промышленность нашем случае ИМХО это вовсе не энергетика а IT. Точнее та ее часть, что занимается Software Development. Так вот промышленным может считаться язык, который массово используется в нашей с вами промышленности.
Промышленность, она разная бывает. А разработка, скажем, бортового ПО для ракеты это уже не Software Development? И причем здесь массовость? Это скорее критерий "популярного", а не "промышленного" языка.
Что касается милого вашему сердцу IT. Живет себе такой Stefan Metzeler. Он не бегает по собеседованиям и не рассылает резюме. Вместо этого он в одиночку реализовал порядка 20 проектов за 8 лет. И все на Обероне. И плевать ему на то сколько человек пишут на С++,Java и т.п. Между прочим, среди клиентов: DuPont, Hewlett Packard, ABB, IBM, Royal Bank of Canada, Logitech...