Exception handling: issues and a proposed notation

@article{Goodenough1975ExceptionHI,
  title={Exception handling: issues and a proposed notation},
  author={J. Goodenough},
  journal={Commun. ACM},
  year={1975},
  volume={18},
  pages={683-696}
}
This paper defines exception conditions, discusses the requirements exception handling language features must satisfy, and proposes some new language features for dealing with exceptions in an orderly and reliable way. The proposed language features serve to highlight exception handling issues by showing how deficiencies in current approaches can be remedied. 
Exception handling—A static approach
TLDR
Although the sequel concept is sufficient to specify exception handling within a program, one additional concept is introduced, namely the derived definition concept that is introduced as a generalization of the derived type and generic concepts from Ada. Expand
Modular Exception Handling in Context-Aware Applications
Exception handling systems are designed to promote enhanced program modularization in the presence of faults, by supporting a well-defined lexical separation of normal and abnormal code. However,Expand
Exception Handling Considered Harmful
TLDR
Proposals are made for a general syntactic form which reduces the perceived problems of current approaches to exception handling and draws conclusions concerning the harmful aspects of the syntax of these approaches. Expand
A hierarchical exception handler binding mechanism
TLDR
A mechanism is proposed for binding exception handlers to exceptions that can be implemented in programming languages that allow runtime determination of an identifier's binding; most dynamically scoped programming languages meet this criterion. Expand
Exception handling patterns for processes
TLDR
This paper identifies several useful, general-purpose exception handling patterns and demonstrates their applicability in business process and software development models. Expand
Proposed notation for exception handling in UML 2 sequence diagrams
TLDR
The suggested notation distinguishes exception flow from the normal flow of control, creating a visual separation, and providing a way of handling exceptions in both single threaded programs and multi threaded programs. Expand
Exception Handling for C++
TLDR
This paper outlines a design for an exception handling mechanism for C ++ that is flexible, comparatively safe and easy to use, works in a mixed language execution environment, and can be implemented to run efficiently. Expand
A Mechanism for Exception Handling and Its Verification Rules
TLDR
A control structure designed for an exception handling mechanism based on Goodenough's proposal is presented to provide a recovery mechanism as a basic component of any procedure-oriented language, which can handle any kind of error. Expand
Issues with Exception Handling in Object-Oriented Systems
TLDR
It is illustrated that the use of exception handling in object-oriented systems poses potential pitfalls, and it is suggested that their resolution is one of the first steps necessary to make exception handling robust inobject-oriented designs and languages. Expand
Language features for flexible handling of exceptions in information systems
TLDR
An exception-handling facility suitable for languages used to implement database-intensive information systems is presented, and solutions are proposed to a range of problems, including sharing and computing with exceptional information, exception handling by users, the logic of constraints with exceptions, and implementation issues. Expand
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 39 REFERENCES
Structured exception handling
TLDR
The proposed language features serve to highlight exception handling issues by showing how deficiencies in current approaches could be remedied in a coherent and orderly way. Expand
A technique for software module specification with examples
TLDR
This paper presents an approach to writing specifications for parts of software systems sufficiently precise and complete that other pieces of software can be written to interact with the piece specified without additional information. Expand
A program structure for error detection and recovery
TLDR
A method of structuring programs which aids the design and validation of facilities for the detection of and recovery from software errors and a mechanism for the automatic preservation of restart information at a level of overhead which is believed to be tolerable. Expand
On the transfer of control between contexts
We describe a single primitive mechanism for transferring control from one module to another, and show how this mechanism, together with suitable facilities for record handling and storageExpand
Response to detected errors in well-structured programs
TLDR
An organization for structured programs is described which attempts to satisfy the following criteria: error response routines are written by each programmer in terms of the abstract machine which he uses for his normal case code, and errors are reported in those terms. Expand
Software Engineering: Process, Principles, and Goals
TLDR
This paper attempts to define the principles and goals that affect the practice of software engineering into a framework that rationalizes and encourages their proper use, while placing in perspective the diversity of techniques, methods, and tools that presently comprise the subject ofSoftware engineering. Expand
The impact of language design on the production of reliable software
TLDR
This paper discusses the design of programming languages to enhance reliability by presenting several general design principles, and then applies them to particular language constructs. Expand
An operating environment for dynamic-recursive computer programming systems
Presented in this paper is a brief nontechnical introduction to OEDIPUS, a computer programming system which can serve as an operating environment for dynamic and/or recursive programs andExpand
A design methodology for reliable software systems
  • B. Liskov
  • Computer Science
  • AFIPS '72 (Fall, part I)
  • 1972
Any user of a computer system is aware that current systems are unreliable because of errors in their software components. While system designers and implementers recognize the need for reliableExpand
The structure of the “THE”-multiprogramming system
TLDR
A multiprogramming system is described in which all activities are divided over a number of sequential processes, in each of which one or more independent abstractions have been implemented. Expand
...
1
2
3
4
...