Denotational semantics: a methodology for language development
Denotational semantics: a methodology for language development
Introduction to combinators and &lgr;-calculus
Introduction to combinators and &lgr;-calculus
A syntactic theory of sequential control
Theoretical Computer Science
A formulae-as-type notion of control
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Normalization theorems for full first order classical natural deduction
Journal of Symbolic Logic
Essentials of programming languages
Essentials of programming languages
Compiling with continuations
Back to direct style II: first-class continuations
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
The essence of compiling with continuations
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Explicit polymorphism and CPS conversion
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Handbook of logic in computer science (vol. 2)
On the type structure of standard ML
ACM Transactions on Programming Languages and Systems (TOPLAS)
A generic account of continuation-passing styles
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Is continuation-passing useful for data flow analysis?
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
ESOP'92 Selected papers of the symposium on Fourth European symposium on programming
Reasoning about programs in continuation-passing style
Lisp and Symbolic Computation - Special issue on continuations—part I
Polymorphic type assignment and CPS conversion
Lisp and Symbolic Computation - Special issue on continuations—part I
Compiling polymorphism using intensional type analysis
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type-based compiler for standard ML
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
TIL: a type-directed optimizing compiler for ML
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Strong normalization from weak normalization in typed &lgr;-calculi
Information and Computation
Type specialisation for imperative languages
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Eliminating array bound checking through dependent types
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Foundations for partial evaluation of functional programs with computational effects
ACM Computing Surveys (CSUR) - Special issue: electronic supplement to the September 1998 issue
Cayenne—a language with dependent types
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
An induction principle for pure type systems
Theoretical Computer Science
Definitional Interpreters for Higher-Order Programming Languages
Higher-Order and Symbolic Computation
For a Better Support of Static Data Flow
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
LFCS '97 Proceedings of the 4th International Symposium on Logical Foundations of Computer Science
TACS '94 Proceedings of the International Conference on Theoretical Aspects of Computer Software
Sound Specialization in the Presence of Computational Effects
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
The Conservation Theorem revisited
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
Call-By-Name CPS-Translation as a Binding-Time Improvement
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Weak and Strong Beta Normalisations in Typed Lambda-Calculi
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
Continuation Semantics in Typed Lambda-Calculi (Summary)
Proceedings of the Conference on Logic of Programs
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
Extracting constructive content from classical proofs
Extracting constructive content from classical proofs
A computational formalization for partial evaluation
Mathematical Structures in Computer Science
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
CPS translating inductive and coinductive types
PEPM '02 Proceedings of the 2002 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation
A type system for certified binaries
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An induction principle for pure type systems
Theoretical Computer Science
Journal of Functional Programming
A type system for certified binaries
ACM Transactions on Programming Languages and Systems (TOPLAS)
Theoretical Computer Science
Singleton types here, singleton types there, singleton types everywhere
Proceedings of the 4th ACM SIGPLAN workshop on Programming languages meets program verification
Monad translating inductive and coinductive types
TYPES'02 Proceedings of the 2002 international conference on Types for proofs and programs
Continuation-passing style and strong normalisation for intuitionistic sequent calculi
TLCA'07 Proceedings of the 8th international conference on Typed lambda calculi and applications
Hi-index | 0.00 |
Continuation passing style (CPS) translations of typedλ-calculi have numerous applications. However, the range ofthese applications has been confined by the fact that CPStranslations are known for non-dependent type systems only,thus excluding well-known systems like the calculus of constructions(CC) and the logical frameworks (LF). This paper presents techniquesfor CPS translating systems with dependent types, with an emphasis onpure type-theoretical applications.In the first part of the paper we review several lines of workin which the need for CPS translations of dependent type systems hasarisen, and discuss the difficulties involved with CPS translatingsuch systems. One way of overcoming these difficulties is to workwith so-called domain-free type systems. Thus, instead ofBarendregt‘s λ-cube we shall consider the domain-freeλ-cube, and instead of traditional pure type systems,we shall consider domain-free pure type systems.We therefore begin the second part by reviewing the domain-freeλ-cube, which includes domain-free versions of CC and LF, andthen present CPS translations for all the systems of the domain-freeλ-cube. We also introduce Direct Style (DS) (i.e., inverseCPS) translations for all the systems of the domain-freeλ-cube; such DS translations, which have been used in anumber of applications, were previously formulated for untyped andsimply-typed languages only.In the third part we review domain-free pure type systems andgeneralize the CPS translations of the domain-free λ-cube toa large class of domain-free pure type systems which includes most ofthe systems that appear in the literature, including those of thedomain-free λ-cube. Many translations that appear in theliterature arise as special cases of ours.In the fourth part of the paper we present two approaches toCPS translations of traditional pure type systems. The first,indirect, technique lifts the CPS translation of domain-free puretype systems to the analogous class of traditional pure type systemsby using results that relate derivations in domain-free andtraditional pure type systems. The second, direct, approachtranslates derivations, requiring a certain order on derivations tobe well-founded. Both techniques yield translations for most of thesystems that appear in the literature, including those ofBarendregt‘s λ-cube.