Skip to main content

A simple calculus of exception handling

  • Conference paper
  • First Online:
Typed Lambda Calculi and Applications (TLCA 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 902))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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.

    Google Scholar 

  2. 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.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. H.P. Barendregt. The lambda calculus, its syntax and semantics. North-Holland, revised edition, 1984.

    Google Scholar 

  6. 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.

    Google Scholar 

  7. 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.

    Google Scholar 

  8. 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.

    Google Scholar 

  9. 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.

    Google Scholar 

  10. J.-Y. Girard. A new constructive logic: Classical logic. Mathematical Structures in Computer Science, 1:255–296, 1991.

    Google Scholar 

  11. J.-Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types, volume 7 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1989.

    Google Scholar 

  12. 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.

    Google Scholar 

  13. R. Milner, M. Tofte, and R. Harper. The Definition of Standard ML. The MIT Press, 1990.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. 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.

    Google Scholar 

  16. 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.

    Google Scholar 

  17. 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.

    Google Scholar 

  18. 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.

    Google Scholar 

  19. G. D. Plotkin. Call-by-name, call-by-value and the λ-calculus. Theretical Computer Science, 1:125–159, 1975.

    Google Scholar 

  20. D. Prawitz. Natural Deduction, A Proof-Theoretical Study. Almqvist & Wiksell, Stockholm, 1965.

    Google Scholar 

  21. 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.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Mariangiola Dezani-Ciancaglini Gordon Plotkin

Rights and permissions

Reprints 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

Publish with us

Policies and ethics