A framework for defining logics
Journal of the ACM (JACM)
Formalizing Implementation Strategies for First-Class Continuations
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
The Practice of Logical Frameworks
CAAP '96 Proceedings of the 21st International Colloquium on Trees in Algebra and Programming
Natural Deduction for Intuitionistic Non-communicative Linear Logic
TLCA '99 Proceedings of the 4th International Conference on Typed Lambda Calculi and Applications
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
The Occurrence of Continuation Parameters in CPS Terms
The Occurrence of Continuation Parameters in CPS Terms
Rabbit: A Compiler for Scheme
The calculi of lambda-nu-cs conversion: a syntactic theory of control and state in imperative higher-order programming languages
Journal of Functional Programming
A First-Order One-Pass CPS Transformation
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
Journal of Automated Reasoning
Hi-index | 0.00 |
We formally prove the stackability and linearity of exception handlers with ML-style semantics using a novel proof technique via an ordered logical framework (OLF). We first transform exceptions into continuation-passing-style (CPS) terms and formalize the exception properties as a judgement on the CPS terms. Then, rather than directly proving that the properties hold for terms, we prove our theorem for the representations of the CPS terms and transform in OLF. We rely upon the correctness of our representations to transfer the results back to the actual CPS terms and transform. Our work can be seen as two-fold: we present a theoretical justification of using the stack mechanism to implement exceptions of ML-like semantics; and we demonstrate the value of an ordered logical framework as a conceptual tool in the theoretical study of programming languages.