Duality between Call-by-Name Recursion and Call-by-Value Iteration

  • Yoshihiko Kakutani
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2471)

Abstract

We investigate the duality between call-by-name recursion and call-by-value iteration in the λμ-calculi and their models. Semantically, we consider that iteration is the dual notion of recursion. Syntactically, we extend the call-by-name λμ-calculus and the call-by-value one with a fixed-point operator and an iteration operator, respectively. This paper shows that the dual translations between the call-by-name λμ-calculus and the call-by-value one, which is constructed by Selinger, can be expanded to our extended λμ-calculi. Another result of this study provides uniformity principles for those operators.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    S. Bloom and Z. Ésik. Iteration Theories. EATC Monographs on Theoretical Computer Science. Springer-Verlarg, 1993.Google Scholar
  2. [2]
    A. Filinski. Declarative continuations: an investigation of duality in programming language semantics. In Category Theory and Computer Science, volume 389 of LNCS, pages 224–249. Springer-Verlag, 1989.CrossRefGoogle Scholar
  3. [3]
    A. Filinski. Recursion from iteration. Lisp and Symbolic Computation, 7:11–38, 1994.CrossRefGoogle Scholar
  4. [4]
    C. Führmann. Varieties of effects. In Foundations of Software Science and Computation Structures, volume 2303 of LNCS, pages 144–158. Springer-Verlag, 2002.CrossRefGoogle Scholar
  5. [5]
    M. Hasegawa and Y. Kakutani. Axioms for recursion in call-by-value. In Foundations of Software Science and Computation Structures, volume 2030 of LNCS, pages 246–260. Springer-Verlag, 2001.CrossRefGoogle Scholar
  6. [6]
    H. Huwig and A. Poigne. A note on inconsistencies caused by fixpoints in a cartesian closed category. Theoretical Computer Science, 73(1):101–112, 1990.MATHCrossRefMathSciNetGoogle Scholar
  7. [7]
    Y. Kakutani. Duality between call-by-name recursion and call-by-value iteration. Master’s thesis, Research Institute for Mathematical Sciences, Kyoto University, 2001.Google Scholar
  8. [8]
    E. Moggi. Computational lambda-calculus and monads. In 4th LICS Conference. IEEE, 1989.Google Scholar
  9. [9]
    C. H. L. Ong and C. A. Stewart. A Curry-Howard foundation for functional computation with control. In Proceedings of ACM SIGPLAN-SIGACT Symposium on Principle of Programming Languages, Paris, January 1997. ACM Press, 1997.Google Scholar
  10. [10]
    M. Parigot. λμ-calculus: An algorithmic interpretation of classical natural deduction. In Logic Programming and Automated Reasoning, volume 624 of LNCS, pages 190–201. Springer-Verlag, 1992.CrossRefGoogle Scholar
  11. [11]
    A. J. Power and E. P. Robinson. Premonoidal categories and notions of computation. Mathematical Structures in Computer Science, 7(5):453–468, 1997.MATHCrossRefMathSciNetGoogle Scholar
  12. [12]
    P. Selinger. Control categories and duality: on the categorical semantics of the lambda-mu calculus. Mathematical Structures in Computer Science, 11(2):207–260, 2001.MATHCrossRefMathSciNetGoogle Scholar
  13. [13]
    A. K. Simpson and G. D. Plotkin. Complete axioms for categorical fixedpoint operators. In Proceedings of 15th Annual Symposium on Logic and Computer Science, 2000.Google Scholar
  14. [14]
    H. Thielecke. Categorical Structure of Continuation Passing Style. PhD thesis, University of Edinburgh, 1997. Also available as technical report ECS-LFCS-97-376.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Yoshihiko Kakutani
    • 1
  1. 1.Research Institute for Mathematical SciencesKyoto UniversityJapan

Personalised recommendations