D'où proviennent les exceptions et la gestion des exceptions?
J'aime la façon dont .NET l'utilise, j'aime la façon dont C ++ le prend en charge (mais les bibliothèques utilisent malheureusement du code retour ou sont écrites en C à la place). Je connais à peu près son standard dans toutes les nouvelles langues, mais qui l'a conçu en premier ou d'où vient-il?
Le C ++ est-il le premier langage à l'utiliser? Je n'en connais aucun autre plus ancien.
history
exceptions
moucheron
la source
la source
Réponses:
Cité d' ici .
Wikipedia a plus de détails sur la gestion des exceptions dans PL / 1 . Cette page mentionne également que PL / 1 est le premier. Bien sûr, ce n'est pas une preuve scientifique :-)
Quant à savoir qui a conçu PL / 1 en personne, l'article ne mentionne aucun nom, seulement divers comités chez IBM.
la source
Hof, Mössenböck et Pirkelbauer (dans leur article de 1997 Zero-Overhead Exception Handling using Metaprogramming ) affirment que le concept d'exceptions a été suggéré dans les années 70, se référant à la gestion des exceptions de 1975 de John B. Goodenough : Issues et un papier de notation proposé dans les communications l'ACM . Il y confond la gestion moderne des exceptions avec l'idée générale d'enregistrer les rappels, et sa notation proposée ressemble plus à des spécifications de métadonnées d'attribut modernes qu'à
try/catch
, mais elle (ou au moins sa section 2) est un excellent aperçu de l'état de la gestion des exceptions dans le milieu des années 70.Peut-être à noter est également le
raise/rescue
mécanisme d' Alef , que l'on peut voir comme une forme primitive decatch
blocs, de peur que nous ne pensions qu'ils surgissent pleinement formés du front de Stroustroup comme Athéna de Zeus.la source