Abstract
This paper motivates and presents the specification and the implementation of an exception handling system for an dynamically typed object-oriented language. A full object-oriented representation of exceptions and handlers, a meta-object protocol to handle using either termination or resumption makes the system powerful as well as extendible and solves various exception handling issues. Three kind of dynamic scope handlers (expression handlers, class handlers and default ones) make it possible to define reusable and fault-tolerant software modules. The implementation of the system is readable and simple to understand because achieved entirely in Objectworks Smalltalk, thanks to the reflective facilities of this language.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
A. Borgida: Language Features for Flexible Handling of Exceptions in Information Systems. ACM Transactions on Database Systems, Vol. 10, No. 4, pp. 565–603, December 1985.
F. Christian: Exception Handling and Software Fault-Tolerance. IEEE Trans. on Computers, Vol. C-31, No. 6, pp. 531–540, June 1982.
C. Dony: An Exception Handling System for an Object-Oriented Language. Procs of.ECOOP’88, 1988; Lectures Notes in Comp. Sci. 322, pp. 146–161.
C. Dony: Exception handling & Object-Oriented Programming: Towards a Synthesis. Proceedings of the Joint conference ECOOP-OOPSLA’90, Ottawa, Oct. 1990. Special issue of Sigplan Notices, Vol. 25, No 10, pp. 322–330.
A.F. Garcia, C.M.F. Rubira; Architectural-based Reflective Approach to Incorporating Exception Handling into Dependable Software. In [23].
A. Goldberg, D. Robson: SMALLTALK 80, the language and its implementation. Addison Wesley 1983.
J.B. Goodenough: Exception Handling: Issues and a Proposed Notation. Communication of the ACM, Vol. 18, No. 12, pp. 683–696, December 1975.
J. Ichbiah & al: Preliminary ADA Reference Manual. Rationale for the Design of the ADA Programming Language. Sigplan Notices Vol. 14, No. 6, June 1979.
J.L. Knudsen: Better Exception Handling in Block Structured Systems. IEEE Software, pp 40–49, May 1987.
J.L. Knudsen: Exception Handling and Fault Tolerance in Beta. In [23].
A. Koenig, B. Stroustrup: Exception Handling for C++. Proceedings of Usenix’90, pp. 149–176, San Francisco, USA, April 1990.
R. Levin: Program structures for exceptional condition handling. Ph.D. dissertation, Dept. Comp. Sci., Carnegie-Mellon University Pittsburg, June 1977.
B. Liskov, A. Snyder: Exception Handling in CLU. IEEE Trans. on Software Engineering, Vol. SE-5, No. 6, pp. 546–558, Nov 1979.
B. Meyer: Disciplined exceptions. Interactive Software Engineering, TR-EI-22/EX, 1988.
J.G. Mitchell, W. Maybury, R. Sweet: MESA Language Manual.Xerox Research Center, Palo Alto, California, Mars 1979.
R. Miller, A. Tripathi: Issues with Exception Handling in Object-Oriented Systems. ECOOP’ 97 proceedings, Lecture Notes in Computer Science“, Vol. 1241, pp. 85–103, Mehmet Aksit and Satoshi Matsuoka editors, Springer-Verlag 1997.
D. Moon, D. Weinreb: Signaling and Handling Conditions. LISP Machine Manual, MIT AI-Lab., Cambridge, Massachussets, 1983.
_B.A. Nixon: A Taxis Compiler. Tech. Report 33, Comp. Sci. Dept., Univ. of Toronto, April 83.
K. Pitman: Error/Condition Handling. Contribution to WG16. Revision 18.Propositions pour ISO-LISP. AFNOR, ISO/IEC JTC1/SC 22/WG 16N15, April 1988.
K. Pitman: Condition Handling in the Lisp Language Family. In [23].
Objectworks for Smalltalk-80, version 2.5. Advanced User’s Guide-Exception Handling. ParcPlace systems, 1989.
Jan Purchase, Russel Winder: Message Pattern Specifications: A New Technique for Handling Bugs in Parallel Object Oriented Systems. ACM SIGPLAN Notices, vol. 25, no. 10, pp. 116–125, October 1990.
Advances in Exception Handling Techniques,Alexander Romanovsky, Christophe Dony, Jorgen Knudsen, Anand Tripathy Editors, Springer-Verlag, 2001.
S. Yemini, D.M. Berry: A Modular Verifiable Exception-Handling Mechanism. ACM Trans. on Progr. Languages and Systems, Vol. 7, No. 2, pp. 213–243, April 1985
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Dony, C. (2001). A Fully Object-Oriented Exception Handling System: Rationale and Smalltalk Implementation. In: Romanovsky, A., Dony, C., Knudsen, J.L., Tripathi, A. (eds) Advances in Exception Handling Techniques. Lecture Notes in Computer Science, vol 2022. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45407-1_2
Download citation
DOI: https://doi.org/10.1007/3-540-45407-1_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41952-5
Online ISBN: 978-3-540-45407-6
eBook Packages: Springer Book Archive