Linearly-Used Continuations in the Enriched Effect Calculus

  • Jeff Egger
  • Rasmus Ejlers Møgelberg
  • Alex Simpson
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6014)


The enriched effect calculus is an extension of Moggi’s computational metalanguage with a selection of primitives from linear logic. In this paper, we present an extended case study within the enriched effect calculus: the linear usage of continuations. We show that established call-by-value and call-by name linearly-used CPS translations are uniformly captured by a single generic translation of the enriched effect calculus into itself. As a main syntactic theorem, we prove that the generic translation is involutive up to isomorphism. As corollaries, we obtain full completeness results for the original call-by-value and call-by-name translations. The main syntactic theorem is proved using a category-theoretic semantics for the enriched effect calculus. We show that models are closed under a natural dual model construction. The canonical linearly-used CPS translation then arises as the unique (up to isomorphism) map from the syntactic initial model to its own dual. This map is an equivalence of models. Thus the initial model is self-dual.


Pointed Model Computation Type Linear Logic Typing Rule Left Adjoint 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Barr, M.: ∗-autonomous categories. 752, vol. LNM (1979)Google Scholar
  2. 2.
    Benton, P.N.: A mixed linear and non-linear logic: Proofs, terms and models. In: Pacholski, L., Tiuryn, J. (eds.) CSL 1994. LNCS, vol. 933. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  3. 3.
    Berdine, J., O’Hearn, P.W., Reddy, U., Thielecke, H.: Linear continuation-passing. Higher Order and Symbolic Computation 15, 181–208 (2002)zbMATHCrossRefGoogle Scholar
  4. 4.
    Egger, J., Møgelberg, R.E., Simpson, A.: Enriching an effect calculus with linear types. In: Grädel, E., Kahle, R. (eds.) CSL 2009. LNCS, vol. 5771, pp. 240–254. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  5. 5.
    A.: Filinski. Controlling Effects. PhD thesis, School of Comp. Sci., CMU (1996)Google Scholar
  6. 6.
    Hasegawa, M.: Linearly used effects: Monadic and CPS transformations into the linear lambda calculus. In: Hu, Z., Rodríguez-Artalejo, M. (eds.) FLOPS 2002. LNCS, vol. 2441, pp. 167–182. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  7. 7.
    Hasegawa, M.: Semantics of linear continuation-passing in call-by-name. In: Kameyama, Y., Stuckey, P.J. (eds.) FLOPS 2004. LNCS, vol. 2998, pp. 229–243. Springer, Heidelberg (2004)Google Scholar
  8. 8.
    Kelly, G.M.: Basic Concepts of Enriched Category Theory. London Math. Society Lecture Note Series, vol. 64. Cambridge University Press, Cambridge (1982)zbMATHGoogle Scholar
  9. 9.
    Lawvere, F.W.: Ordinal sums and equational doctrines. In: Seminar on Triples and Categorical Homology Theory (ETH, Zürich), pp. 141–155. Springer, Heidelberg (1969)CrossRefGoogle Scholar
  10. 10.
    Levy, P.B.: Call-by-push-value. In: A functional/imperative synthesis. Semantic Structures in Computation. Springer, Heidelberg (2004)Google Scholar
  11. 11.
    Moggi, E.: Computational lambda-calculus and monads. In: Proc. 4th LICS, pp. 14–23 (1989)Google Scholar
  12. 12.
    Moggi, E.: Notions of computation and monads. Information and Computation 93, 55–92 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Parigot, M.: λμ-calculus: an algorithmic interpretation of classical natural deduction. In: Voronkov, A. (ed.) LPAR 1992. LNCS, vol. 624, pp. 190–201. Springer, Heidelberg (1992)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Jeff Egger
    • 1
  • Rasmus Ejlers Møgelberg
    • 2
  • Alex Simpson
    • 1
  1. 1.LFCS, School of InformaticsUniversity of EdinburghScotland, UK
  2. 2.IT University of CopenhagenCopenhagenDenmark

Personalised recommendations