Откуда возникли исключения и их обработка?
Мне нравится, как это использует .NET, мне нравится, как это поддерживает C ++ (но библиотеки, к сожалению, используют код возврата или написаны на C). Я знаю его в значительной степени стандарт на всех новых языках, но кто его спроектировал первым или откуда он появился?
Является ли C ++ первым языком для его использования? Я не знаю ни одного другого, который старше.
history
exceptions
комар
источник
источник
Ответы:
Цитируется здесь .
В Википедии есть больше деталей об обработке исключений в PL / 1 . Эта страница также относится к PL / 1, который является первым. Конечно, это не научное доказательство :-)
Что касается того, кто лично разработал PL / 1, в статье не упоминаются имена, только различные комитеты в IBM.
источник
Hof, Mössenböck и Pirkelbauer (в своей статье 1997 года « Обработка исключений с нулевыми накладными расходами с использованием метапрограммирования» ) утверждают, что концепция исключений была предложена в семидесятых годах, ссылаясь на обработку исключений 1975 года Джона Б. Гуденоу : проблемы и предлагаемую нотацию в сообщениях ACM . В нем он объединяет современную обработку исключений с общей идеей регистрации обратных вызовов, и его предложенная нотация больше похожа на современные спецификации метаданных атрибутов, чем на
try/catch
нее, но она (или, по крайней мере, ее раздел 2) является отличным обзором состояния обработки исключений в в середине семидесятых годов.Возможно, следует отметить также
raise/rescue
механизм в Алефе , который можно рассматривать как примитивную формуcatch
блоков, чтобы мы не думали, что они полностью сформировались из лба Страуструпа, как Афина из зевса.источник