Results 1  10
of
11
Relational parametricity and control
 Logical Methods in Computer Science
"... www.lmcsonline.org ..."
(Show Context)
An EquivalencePreserving CPS Translation via MultiLanguage Semantics (Technical Appendix)
"... the complete set of technical definitions (Sections 3 to 7), and the proofs (Sections 8 to 13). In particular, in Section 1.3, we adopt System F without the CPS restriction as our target language and present the changes needed—to the backtranslation and the proofs—to establish full abstraction in t ..."
Abstract

Cited by 12 (5 self)
 Add to MetaCart
(Show Context)
the complete set of technical definitions (Sections 3 to 7), and the proofs (Sections 8 to 13). In particular, in Section 1.3, we adopt System F without the CPS restriction as our target language and present the changes needed—to the backtranslation and the proofs—to establish full abstraction in this setting.
On Typing Delimited Continuations: Three New Solutions to the Printf Problem
 HigherOrder and Symbolic Computation
, 2009
"... In “Functional Unparsing ” (JFP 8(6): 621–625, 1998), Danvy presented a typesafe printf function using continuations and an accumulator to achieve the effect of dependent types. The key technique employed in Danvy’s solution is the nonstandard use of continuations: not all of its calls are tail ca ..."
Abstract

Cited by 12 (5 self)
 Add to MetaCart
(Show Context)
In “Functional Unparsing ” (JFP 8(6): 621–625, 1998), Danvy presented a typesafe printf function using continuations and an accumulator to achieve the effect of dependent types. The key technique employed in Danvy’s solution is the nonstandard use of continuations: not all of its calls are tail calls, i.e., it uses delimited continuations. Against this backdrop, we present three new solutions to the printf problem: a simpler one that also uses delimited continuations but that does not use an accumulator, and the corresponding two in direct style with the delimitedcontrol operators, shift and reset. These two solutions are the directstyle counterparts of the two continuationbased ones. The last solution pinpoints the essence of Danvy’s solution: shift is used to change the answer type of delimited continuations. Besides providing a new application of shift and reset, the solutions in direct style raise a key issue in the typing of firstclass delimited continuations and require Danvy and Filinski’s original type system. The resulting types precisely account for the behavior of printf. This is the extended version of the previous technical report OCHAIS 071. It contains an introduction to continuationpassing style and delimitedcontrol operators, shift and reset.
A CallbyName CPS Hierarchy
"... Abstract. The ContinuationPassingStyle (CPS) translation gives semantics to control operators such as exception and firstclass continuations. By iterating this translation, Danvy and Filinski obtained a CPS hierarchy, and used it to specify a series of control operators, hierarchical (or layered) ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. The ContinuationPassingStyle (CPS) translation gives semantics to control operators such as exception and firstclass continuations. By iterating this translation, Danvy and Filinski obtained a CPS hierarchy, and used it to specify a series of control operators, hierarchical (or layered) delimitedcontrol operators, We introduce a callbyname variant of the CPS hierarchy. While most of the work on delimitedcontrol operators is based on callbyvalue calculi, callbyname delimitedcontrol operators are an active target of recent studies. Our strategy for developing such a hierarchy is to use the results for the callbyvalue calculi as much as possible. The key tool is Hatcliff and Danvy’s factorization of Plotkin’s callbyname CPS translation into a thunk translation and a callbyvalue CPS translation. We show that a callbyname CPS hierarchy can be obtained by naturally extending the factorization to the calculi with control operators, and then prove several properties for this hierarchy. 1
unknown title
"... duality, and computationally still interesting, since dual of polymorphic functions with universal type can be regarded as abstract data types with exis tential type [MP85]. Instead of classical systems like [Pari92], even intuitionistic systems can enjoy that polymorphic types can be interpreted by ..."
Abstract
 Add to MetaCart
(Show Context)
duality, and computationally still interesting, since dual of polymorphic functions with universal type can be regarded as abstract data types with exis tential type [MP85]. Instead of classical systems like [Pari92], even intuitionistic systems can enjoy that polymorphic types can be interpreted by existential types and vice versa. This interpretation also contains proof duality, such that the universal introduction rule is interpreted by the use of the existential elimination rule, and the universal elimination by the existential introduction. Moreover, we established not only a Galois connection but also a Galois embedding from polymorphic Acalculus (GirardReynolds) into a calculus with existential types. 2 Polymorphic Acalculus A2 We give the definition of polymorphic Acalculus \‘a la Church as second order intuitionistic logic, denoted by A2. This calculus is also known as the system F. The syntax of types is defined from type variables denoted by $X $ , $\mathrm{u}\mathrm{s}\mathrm{i}\mathrm{n}\mathrm{g}\Rightarrow \mathrm{o}\mathrm{r}$ over type variables. The syntax of A2terms is defined from individual variables denoted by $x $ , using termapplications, typeapplications or Aabstractions over individual variables or type variables.
Two Values Passing CPS Transformation for CallbyName Calculus with Constants
"... Yu G, Liu XX. Two values passing CPS transformation for callbyname calculus with constants. Journal of Software, 2008,19(10):2508−2516. ..."
Abstract
 Add to MetaCart
(Show Context)
Yu G, Liu XX. Two values passing CPS transformation for callbyname calculus with constants. Journal of Software, 2008,19(10):2508−2516.
Under consideration for publication in J. Functional Programming
, 2007
"... We combine ideas from types for continuations, effect systems and monads in a very simple setting by defining a version of classical propositional logic in which doublenegation elimination is combined with a modality. The modality corresponds to control effects, and it includes a form of effect mas ..."
Abstract
 Add to MetaCart
(Show Context)
We combine ideas from types for continuations, effect systems and monads in a very simple setting by defining a version of classical propositional logic in which doublenegation elimination is combined with a modality. The modality corresponds to control effects, and it includes a form of effect masking. Erasing the modality from formulas gives classical logic. On the other hand, the logic is conservative over intuitionistic logic. 1
Frame Rules from Answer Types for Code Pointers
"... We define a type system, which may also be considered as a simple Hoare logic, for a fragment of an assembly language that deals with code pointers and jumps. The typing is aimed at local reasoning in the sense that only the type of a code pointer is needed, and there is no need to know the whole co ..."
Abstract
 Add to MetaCart
(Show Context)
We define a type system, which may also be considered as a simple Hoare logic, for a fragment of an assembly language that deals with code pointers and jumps. The typing is aimed at local reasoning in the sense that only the type of a code pointer is needed, and there is no need to know the whole code itself. The main features of the type system are separation logic connectives for describing the heap, and polymorphic answer types of continuations for keeping track of jumps. Specifically, we address an interaction between separation and answer types: frame rules for local reasoning in the presence of jumps are recovered by instantiating the answer type. However, the instantiation of answer types is not sound for all types. To guarantee soundness, we restrict instantiation to closed types, where the notion of closedness arises from biorthogonality (in a sense inspired by Krivine and Pitts). A machine state is orthogonal to a disjoint heap if their combination does not lead to a fault. Closed types are sets of machine states that are orthogonal to a set of heaps. We use closed types as wellbehaved answer types.
unknown title
"... We study the equational theory of Parigot’s secondorder λµcalculus in connection with a callbyname continuationpassing style (CPS) translation into a fragment of the secondorder λcalculus. It is observed that the relational parametricity on the target calculus induces a natural notion of equiv ..."
Abstract
 Add to MetaCart
(Show Context)
We study the equational theory of Parigot’s secondorder λµcalculus in connection with a callbyname continuationpassing style (CPS) translation into a fragment of the secondorder λcalculus. It is observed that the relational parametricity on the target calculus induces a natural notion of equivalence on the λµterms. On the other hand, the unconstrained relational parametricity on the λµcalculus turns out to be inconsistent with this CPS semantics. Following these facts, we propose to formulate the relational parametricity on the λµcalculus in a constrained way, which might be called “focal parametricity”. 1.