Abstract
We introduce a simply-typed λ-calculus (λ →exn ) featuring an ML-like exception handling mechanism. This calculus, whose type system corresponds to classical logic through the Curry-Howard isomorphism, satifies several interesting properties: among other, Church-Rosser, subject reduction, and strong-normalisation. Moreover, its typing system ensures that the reduction of well-typed expressions cannot give rise to uncaught exceptions.
Preview
Unable to display preview. Download preview PDF.
References
A. Appel, D.B. MacQueen, R. Milner, and M. Tofte, Unifying exceptions with constructors in standard ML. Technical Report ECS-LFCS-88-55, Laboratory for Foundations of Computer Science, University of Edinburgh, 1988.
F. Barbanera and S. Berardi. Continuations and simple types: a strong normalization result. In Proceedings of the ACM SIGPLAN Workshop on Continuations. Report STAN-CS-92-1426, Stanford University, 1992.
F. Barbanera and S. Berardi. Extracting constructive content from classical logic via control-like reductions. In M. Bezem and J.F. Groote, editors, Proceedings of the International Conference on Typed Lambda Calculi and Applications, pages 45–59. Lecture Notes in Computer Science, 664, Springer Verlag, 1993.
F. Barbanera and S. Berardi. A symmetric lambda-calculus for “classical” program extraction. In M. Hagiya and J.C. Mitchell, editors. Proceedings of the International Symposium on Theretical Aspects of Computer Software, pages 494–515. Lecture Notes in Computer Science, 789, Springer Verlag, 1994.
H.P. Barendregt. The lambda calculus, its syntax and semantics. North-Holland, revised edition, 1984.
R. Constable and C. Murthy. Finding computational content in classical proofs. In G. Huet and G. Plotkin, editors, Logical Frameworks, pages 341–362. Cambridge University Press, 1991.
Ph. de Groote. A CPS-translation of the λμ-calculus. In S. Tison, editor, Proceedings of the 19th International Colloquium on Trees in Algebra and Programming (CAAP'94), pages 85–99. Lecture Notes in Computer Science, 787, Springer Verlag, 1994.
Ph. de Groote. On the relation between the λμ-calculus and the syntactic theory of sequential control. In Proceedings of the 5th International Conference on Logic Programming and Automated Reasoning-LPAR'94, pages 31–43. Lecture Notes in Computer Science, 822, Springer Verlag, 1994.
J.H. Gallier. On the correspondence between proofs and λ-terms. In Ph. de Groote, editor, Cahiers du Centre de Logique (Université Catholique de Louvain), Volume 8, pages 55–138. Academia, Louvain-la-Neuve, 1995.
J.-Y. Girard. A new constructive logic: Classical logic. Mathematical Structures in Computer Science, 1:255–296, 1991.
J.-Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types, volume 7 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1989.
T. G. Griffin. A formulae-as-types notion of control. In Conference record of the seventeenth annual ACM symposium on Principles of Programming Languages, pages 47–58, 1990.
R. Milner, M. Tofte, and R. Harper. The Definition of Standard ML. The MIT Press, 1990.
C. R. Murthy. An evaluation semantics for classical proofs. In Proceedings of the sixth annual IEEE symposium on logic in computer science, pages 96–107, 1991.
C. R. Murthy. A computational analysis of Girard's translation and LC. In Proceedings of the seventh annual IEEE symposium on logic in computer science, pages 90–101, 992.
M. Parigot. λμ-Calculus: an algorithmic interpretation of classical natural deduction. In A. Voronkov, editor, Proceedings of the International Conference on Logic Programming and Automated Reasoning, pages 190–201. Lecture Notes in Artificial Intelligence, 624, Springer Verlag, 1992.
M. Parigot. Classical proofs as programs. In G. Gottlod, A. Leitsch, and D. Mundici, editors, Proceedings of the third Kurt Gödel colloquium — KGC'93, pages 263–276. Lecture Notes in Computer Science, 713, Springer Verlag, 1993.
M. Parigot. Strong normalization for second order classical natural deduction. In Proceedings of the eighth annual IEEE symposium on logic in computer science, pages 39–46, 1993.
G. D. Plotkin. Call-by-name, call-by-value and the λ-calculus. Theretical Computer Science, 1:125–159, 1975.
D. Prawitz. Natural Deduction, A Proof-Theoretical Study. Almqvist & Wiksell, Stockholm, 1965.
N.J. Rehof and M.H. Sørensen. The λΔ-calculus. In M. Hagiya and J.C. Mitchell, editors, Proceedings of the International Symposium on Theoretical Aspects of Computer Software — TACS'94, pages 516–542. Lecture Notes in Computer Science, 789, Springer Verlag, 1994.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
de Groote, P. (1995). A simple calculus of exception handling. In: Dezani-Ciancaglini, M., Plotkin, G. (eds) Typed Lambda Calculi and Applications. TLCA 1995. Lecture Notes in Computer Science, vol 902. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014054
Download citation
DOI: https://doi.org/10.1007/BFb0014054
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-59048-4
Online ISBN: 978-3-540-49178-1
eBook Packages: Springer Book Archive