Zusammenfassung
Ein neues Sprachkonstrukt, die Multi-exit-Anweisung, wird vorgeschlagen. Es erlaubt, die Behandlung von Ausnahmesituationen in Programmen in einer sauberen Weise vorzunehmen, und macht die Korrektheit von Programmen leicht beweisbar. Es ist beabsichtigt, mit der Multi-exit-Anweisung die kürzlich von John REYNOLDS und Martin van EMDEN vorgeschlagene Programmkonstruktionstechnik zu unterstützen, die darauf beruht, daß Programme als Zustandsübergangsdiagramme angesehen werden. Es werden Beweisregeln zum Zeigen der totalen Korrektheit von Multi-exit-Anweisungen angegeben, die eine neue Art der Axiomatisierung von Sprunganweisungen erlauben. Diese Art der Axiomatisierung beruht auf der Technik der symbolischen Programmausführung. Sie entspricht sehr stark der Intuition des Programmierers, wodurch es für einen Programmierer leicht wird, manuell Korrektheitsbeweise zu führen.
Abstract
A new language construct, the multi-exit statement, is proposed. This provides a clean way of handling exceptional situations in programs, and makes the programs easy to prove correct. The multi-exit statement is intended to support the program construction technique recently proposed by John REYNOLDS and Martin van EMDEN which is based on considering programs as state transition diagrams. Proof rules for showing the total correctness of multi-exit statements will be given which provide a new axiomatisation of goto-statements. This axiomatisation is based on the symbolic execution technique. It conforms closely to the intuition of the programmer making manual proofs of the program correctness easy to perform.
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
ARBIB, M.A. & ALAGIC, S., Proof rules for goto’s, Acta Informatica 11, 139–148, 1979.
BACK, R.J.R., Program construction by situation analysis, Computing Centre of University of Helsinki, Research report 6, 1978.
BACK, R.J.R., & KOSKENNIEMI, K., Constructing verifiable programs: a language proposal, in preparation.
BACK, R.J.R., & KOSKENNIEMI, K., Constructing verifiable programs: a case study, in preparation.
de BRUIN, A., Goto statements: semantics and deduction systems (preprint). Report IW 74/79, Mathematisch Centrum, 1979.
CLINT, M. & HOARE, C.A.R., Program proving: jumps and functions. Acta Informatica 1, 214–224, 1972.
van EMDEN, M.H., Programming with verification conditions, IEEE Transactions on Software Engineering, SE-5,2, 1979.
GOODENOUGH, J.B., Exception handling: issues and a proposed notation. Comm. of ACM, 18,12,683–696, 1975.
HANTLER, S.L. & KING, J.C., An introduction to proving the correctness of programs, Computing Surveys 8, 3, 331–353, 1976.
HEHNER, E., Do considered od: a contribution to the programming calculus, Acta Information 11, 287–304, 1979.
ICHBIAH, J.D & al, Rationale for the design of the ADA programming language, Sigplan Notices 14, 6, 1979.
KOWALTOWSKI, T., Axiomatic approach to side effects and general jumps, Acta Informatica 7, 357–360, 1977.
LEVIN, R., Program structures for exceptional condition handling, Dept. of Computer Science, Carnegie-Mellon University, 1977.
REYNOLDS, J.C., Programming with transition diagrams, In Gries, D. (ed.) Programming Methodology, Springer Verlag, Berlin, 1978.
WANG, A., An axiomatic basis for proving total correctness of goto-programs, BIT 16, 88–102, 1976.
WIRTH, N., Modula-2, Institut fur Informatik, ETH, Zurich, 1979.
ZAHN, C.T., A control structure for natural top-down structured programming, Symposium on Programming Languages, Paris 1974.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1980 Springer-Verlag Berlin · Heidelberg
About this paper
Cite this paper
Back, RJ. (1980). Exception Handling with Multi-Exit Statements. In: Hoffmann, HJ. (eds) Programmiersprachen und Programmentwicklung. Informatik-Fachberichte, vol 25. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-67600-0_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-67600-0_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-09937-6
Online ISBN: 978-3-642-67600-0
eBook Packages: Springer Book Archive