Abstract
In this paper, a new semantics for exception handling in algebraic specifications is provided. Our formalism allows all forms of exception and error handling (several error messages, implicit error progagation rule, exception recovery policy), while preserving the existence of initial models. It handles complex examples where various exceptional cases (leading to different processings) can be specified. The main concept of our approach is the distinction between exception and error. This formalism allows use of congruences in a similar manner as in the classical abstract data type theory. Moreover, we show how a functorial semantics of enrichment can be carried over to our framework, and we show how hierarchical consistency and sufficient completeness can be redefined. These results provide a firm basis for writing modular, structured specifications with exception handling features.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Goguen J., Thatcher J., Wagner E.: "An initial algebra approach to the specification, correctness, and implementation of abstract data types", Current Trends in Programming Methodology, Vol.4, Yeh Ed. Prentice Hall, 1978 (also IBM Report RC 6487, Oct. 1976).
Thatcher J., Wagner W., Wright J.: "Data type specification: parameterization and the power of specification techniques", Proc. of SIGACT 10th Annual Symposium on Theory of Computing, 1979.
Ehrig H., Kreowski H., Thatcher J., Wagner J., Wright J.: "Parameterized data types in algebraic specification languages", Proc. 7th ICALP, July 1980.
Bernot G., Bidoit M., Choppy C.: "Abstract implementations and correctness proofs", Proc. 3rd STACS, January 1986, Springer-Verlag LNCS.
Bernot G.: "Implémentations de types abstraits algébriques en présence d'exceptions", DEA Report, LRI, Orsay, Sept. 1984.
Bernot G.: "Une sémantique algébrique pour une spécification différenciée des exceptions et des erreurs: application à l'implémentation et aux primitives de structuration des spécifications formelles", Thèse de troisième cycle, Université de Paris-Sud, 1986.
Bidoit M.: "Algebraic data types: structured specifications and fair presentations", Proc. of AFCET Symposium on Mathematics for Computer Science, Paris, March 1982.
Bidoit M.: "Algebraic specification of exception handling by means of declarations and equations", Proc. 11th ICALP, Springer-Verlag LNCS 172, July 1984.
Broy M., Wirsing M.: "Partial abstract data types", Acta Informatica, Vol.18–1, Nov 1982.
Ehrig H., Kreowski H., Mahr B., Padawitz P.: "Algebraic implementation of abstract data types", Theoretical Computer Science, Oct. 1980.
Engels G., Pletat V., Ehrich H.: "Handling errors and exceptions in the algebraic specification of data types", Osnabruecker Schriften zur Mathematik, July 1981.
Gogolla M., Drosten K., Lipeck U., Ehrich H.D.: "Algebraic and operational semantics of specifications allowing exceptions and errors", Theoretical Computer Science 34, North Holland, 1984.
Goguen J.A.: "Abstract errors for abstract data types", Formal Description of Programming Concepts E.J. NEUHOLD Ed., North Holland, New York
Goguen J.A.: "Exceptions and error sorts, coercion and overloading operators", SRI Research Report, 1978.
Guttag J.V.: "Notes on type abstraction (Version 2)", IEEE Transactions on Software Engineering, 1979.
Loeckx J.: "Algorithmic specifications of abstract data types", ICALP 1981.
Mac Lane S.: "Categories for the working mathematician", Graduate texts in mathematics, 5, Springer-Verlag, 1971.
Plaisted D.: "An initial algebra semantics for error presentations", Unpublished Draft, 1982.
Sannella D., Wirsing M.: "A kernel language for algebraic specification and implementation", Proc. Intl. Conf. on Foundations of computation Theory, Springer-Verlag, LNCS 158, 1983.
Wirsing M.: "Structured algebraic specifications", Proc. of AFCET Symposium on Mathematics for Computer Science, Paris, March 1982.
Wirsing M.: "Structured algebraic specifications: a kernel language", Habilitation thesis, Technische Universitat Munchen, 1983.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1986 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bernot, G., Bidoit, M., Choppy, C. (1986). Algebraic semantics of exception handling. In: Robinet, B., Wilhelm, R. (eds) ESOP 86. ESOP 1986. Lecture Notes in Computer Science, vol 213. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-16442-1_13
Download citation
DOI: https://doi.org/10.1007/3-540-16442-1_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-16442-5
Online ISBN: 978-3-540-39782-3
eBook Packages: Springer Book Archive