Skip to main content
Log in

Axioms for Recursion in Call-by-Value

  • Published:
Higher-Order and Symbolic Computation

Abstract

We propose an axiomatization of fixpoint operators in typed call-by-value programming languages, and give its justifications in two ways. First, it is shown to be sound and complete for the notion of uniform T-fixpoint operators of Simpson and Plotkin. Second, the axioms precisely account for Filinski's fixpoint operator derived from an iterator (infinite loop constructor) in the presence of first-class continuations, provided that we define the uniformity principle on such an iterator via a notion of effect-freeness (centrality). We then explain how these two results are related in terms of the underlying categorical structures.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Bloom, S. and Esik, Z. Iteration Theories, EATCS Monographs on Theoretical Computer Science. Springer-Verlag, Berlin, 1993.

    Google Scholar 

  2. Crole, R.L. and Pitts, A.M. New foundations for fixpoint computations: FIX-hyperdoctrines and the FIX-logic. Inform. and Comput., 98(2) (1992) 171–210.

    Google Scholar 

  3. Erkök, L. and Launchbury, J. Recursive monadic bindings. In Proc. International Conference on Functional Programming, 2000, pp. 174–185.

  4. Filinski, A. Declarative continuations: An investigation of duality in programming language semantics. In Proc. Category Theory and Computer Science. Springer Lecture Notes in Comput. Sci., Vol. 389, 1989, pp. 224–249.

    Google Scholar 

  5. Filinski, A. Recursion from iteration. Lisp and Symbolic Comput., 7(1) (1994) 11–38.

    Google Scholar 

  6. Filinski, A. Controlling effects. Ph. D. Thesis, Carnegie Mellon University, CMU-CS-96-119, 1996.

  7. Fiore, M. Axiomatic domain theory in categories of partical maps. Ph.D. Thesis, University of Edinburgh, ECS-LFCS-94-307, 1994; also in Distinguished Dissertation Series, Cambridge University Press, 1996.

  8. Flanagan, C., Sabry, A., Duba, B.F., and Felleisen, M. The essence of compiling with continuations. In Proc. ACM Conference on Programming Languages Design and Implementation, 1993, pp. 237–247.

  9. Friedman, D.P. and Sabry, A. Recursion is a computational effect. Technical Report No. 546, Computer Science Department, Indiana University, 2000.

  10. Führmann, C. The structure of call-by-value. Ph.D. Thesis, University of Edinburgh, 2000.

  11. Harper, R., Duba, B.F., and MacQueen, D. Typing first-class continuations in ML. J. Funct. Programming, 3(4) (1993) 465–484.

    Google Scholar 

  12. Hasegawa, M. Models of sharing graphs: A categorical semantics of let and letrec. Ph.D. Thesis, University of Edinburgh, ECS-LFCS-97-360, 1997; also in Distinguished Dissertation Series, Springer-Verlag, 1999.

  13. Hofmann, M. Sound and complete axiomatisations of call-by-value control operators. Math. Structures Comput. Sci., 5(4) (1995) 461–482.

    Google Scholar 

  14. Jeffrey, A. Premonoidal categories and a graphical view of programs. Unpublished, 1998.

  15. Kakutani, Y. Duality between call-by-name recursion and call-by-value iteration. M.Sc. Thesis, Kyoto University, 2001.

  16. Lambek, J. and Scott, P. Introduction to Higher Order Categorical Logic. Cambridge University Press, 1986.

  17. Milner, R., Tofte, M., Harper, R., and MacQueen, D. The Definition of Standard ML (Revised). MIT Press, Cambridge, MA, 1997.

    Google Scholar 

  18. Moggi, E. Computational lambda-calculus and monads. In Proc. 4th Annual Symposium on Logic in Computer Science, pp. 14–23, 1989; a different version available as Technical Report ECS-LFCS-88-86, University of Edinburgh, 1988.

  19. Moggi, E. Notions of computation and monads. Inform. and Comput., 93(1) (1991) 55–92.

    Google Scholar 

  20. Parigot, M. -calculus: An algorithmic interpretation of classical natural deduction. In Proc. International Conference on Logic Programming and Automated Reasoning. Springer Lecture Notes in Computer Science, Vol. 624, 1992, pp. 190–201.

    Google Scholar 

  21. Plotkin, G.D. Call-by-name, call-by-value, and the ?-calculus. Theoret. Comput. Sci., 1(1) (1975) 125–159.

    Google Scholar 

  22. Power, A.J. and Robinson, E.P. Premonoidal categories and notions of computation. Math. Structures Comput. Sci., 7(5) (1997) 453–468.

    Google Scholar 

  23. Sabry, A. and Felleisen, M. Reasoning about programs in continuation-passing style. In Proc. ACMConference on Lisp and Functional Programming, 1992, pp. 288–298; extended version also in Lisp and Symbolic Comput., 6(3/4) (1993) 289-360.

    Google Scholar 

  24. Schweimeier, R. and Jeffrey, A. Compilation of higher-order languages in graphical form. In Proc. 15th Conference on Mathematical Foundations of Programming Semantics. Electron. Notes Theor. Comput. Sci., 20 (1999).

  25. Selinger, P. Control categories and duality: On the categorical semantics of the lambda-mu calculus. Math. Structures Comput. Sci., 11(2) (2001) 207–260.

    Google Scholar 

  26. Simpson, A.K. Recursive types in Kleisli categories. Unpublished, 1992.

  27. Simpson, A.K. and Plotkin, G.D. Complete axioms for categorical fixed-point operators. In Proc. 15th Annual Symposium on Logic in Computer Science, 2000, pp. 30–41.

  28. Thielecke, H. Categorical structure of continuation passing style. Ph.D. Thesis, University of Edinburgh, ECS-LFCS-97-376, 1997.

  29. Thielecke, H. Using a continuation twice and its implications for the expressive power of call/cc. Higher-Order and Symbolic Comput., 12(1) (1999) 47–73.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hasegawa, M., Kakutani, Y. Axioms for Recursion in Call-by-Value. Higher-Order and Symbolic Computation 15, 235–264 (2002). https://doi.org/10.1023/A:1020895213317

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1020895213317

Navigation