R – Who invented the throw/try/catch[/finally] kind of error handling

exceptionexception handlinglanguage-designlanguage-featurestheory

My questions are more of historical nature than practical:

  1. Who invented it?
  2. Which language used it first (and to what extent)?
  3. What was the original idea, the underlying concept (which actual problems had to be solved these days, papers welcome) ?
  4. Is LISPs condition system the ancestor of current exception handling?

Best Answer

Today's Common Lisp condition system is a relative newcomer. The design was based on previous systems, but wasn't included as part of the Common Lisp language until the late 80's around the time of CLTL2

I believe the conditions chapter in that book has a fair amount commentary on the history and background of the design, and references to related research and prior implementations of similar systems.