Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3838))

Abstract

Despite decades of research in the λ-calculus, the syntactic properties of the weak λ-calculus did not receive great attention. However, this theory is more relevant for the implementation of programming languages than the usual theory of the strong λ-calculus. In fact, the frameworks of weak explicit substitutions, or computational monads, or λ-calculus with a let statement, or super-combinators, were developed for adhoc purposes related to programming language implementation. In this paper, we concentrate on sharing of subterms in a confluent variant of the weak λ-calculus. We introduce a labeling of this calculus that expresses a confluent theory of reductions with sharing, independent of the reduction strategy. We finally state that Wadsworth’s evaluation technique with sharing of subterms corresponds to our formal setting.

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, M., Cardelli, L., Curien, P.-L., Lévy, J.-J.: Explicit substitutions. Journal of Functional Programming 6(2), 299–327 (1996)

    Article  MathSciNet  Google Scholar 

  2. Ariola, Z.M., Felleisen, M., Maraist, J., Odersky, M., Wadler, P.: A call-by-need lambda calculus. In: Proc. 22nd ACM Symposium on Principles of Programming Languages, January 1995, pp. 233–246 (1995)

    Google Scholar 

  3. Asperti, A., Coppola, P., Martini, S. (Optimal) duplication is not elementary recursive. Information and Computation 193/1, 21–56 (2004)

    Article  MathSciNet  Google Scholar 

  4. Asperti, A., Guerrini, S.: The Optimal Implementation of Functional Programming Languages. Cambridge University Press, Cambridge (1999)

    Google Scholar 

  5. Barendregt, H.P.: The Lambda Calculus, Its Syntax and Semantics. North-Holland, Amsterdam (1981)

    MATH  Google Scholar 

  6. Çağman, N., Hindley, J.R̃.: Combinatory weak reduction in lambda calculus. Theoretical Computer Science 198, 239–249 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  7. Curien, P.-L., Hardin, T., Lévy, J.-J.: Confluence properties of weak and strong calculi of explicit substitutions. Journal of the ACM 43(2), 362–397 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  8. Fernández, M., Mackie, I.: Closed reductions in the lambda-calculus. In: Flum, J., Rodríguez-Artalejo, M. (eds.) CSL 1999. LNCS, vol. 1683, pp. 220–234. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  9. Gonthier, G., Abadi, M., Lévy, J.-J.: The geometry of optimal lambda reduction. In: Proc. of the 19th Conference on Principles of Programming Languages, pp. 15–26. ACM Press, New York (1992)

    Google Scholar 

  10. R̃oger Hindley, J.: Combinatory reductions and lambda reductions compared. Zeit. Math. Logik 23, 169–180 (1977)

    Article  Google Scholar 

  11. Klop, J.W.: Combinatory Reduction Systems. PhD thesis, Rijksuniversiteit Utrecht (1980)

    Google Scholar 

  12. Lafont, Y.: Interaction nets. In: Principles of Programming Languages, pp. 95–108. ACM Press, New York (1990)

    Google Scholar 

  13. Lamping, J.: An algorithm for optimal lambda-calculus reduction. In: Proceedings of the 17th Annual ACM Symposium on Principles of Programming Languages, pp. 16–30 (1990)

    Google Scholar 

  14. Launchbury, J.: A natural semantics for lazy evaluation. In: Proc. of the 1993 conference on Principles of Programming Languages, pp. 144–154. ACM Press, New York (1993)

    Google Scholar 

  15. Lawall, J.L., Mairson, H.G.: On the global dynamics of optimal graph reduction. In: ACM International Conference on Functional Programming, pp. 188–195 (1997)

    Google Scholar 

  16. Leroy, X.: The ZINC experiment: an economical implementation of the ML language. Technical report 117, INRIA (1990)

    Google Scholar 

  17. Lévy, J.-J.: Réductions correctes et optimales dans le lambda-calcul. PhD thesis, Univ. of Paris 7, Paris (1978)

    Google Scholar 

  18. Lévy, J.-J., Maranget, L.: Explicit substitutions and programming languages. In: Pandu Rangan, C., Raman, V., Sarukkai, S. (eds.) FST TCS 1999. LNCS, vol. 1738, pp. 181–200. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  19. Maraist, J., Odersky, M., Turner, D.N., Wadler, P.: Call-by-name, call-by-value, call-by-need, and the linear lambda calculus. In: Electronic Notes in Theoretical Computer Science, March 1995, pp. 41–62 (1995)

    Google Scholar 

  20. Maranget, L.: La stratégie paresseuse. PhD thesis, Univ. of Paris 7, Paris (1992)

    Google Scholar 

  21. Melliès, P.-A.: Description Abstraite des Systèmes de Réécriture. PhD thesis, Univ. of Paris 7, december (1996)

    Google Scholar 

  22. Peyton-Jones, S.L.: The implementation of Functional Programming Languages. Prentice-Hall, Englewood Cliffs (1987)

    MATH  Google Scholar 

  23. Shivers, O., Wand, M.: Bottom-up beta-substitution: uplinks and lambda-dags. Technical report, BRICS RS-04-38, DAIMI, Department of Computer Science, University of Århus, Århus, Denmark (2004)

    Google Scholar 

  24. Terese: Term Rewriting Systems. Cambridge University Press, Cambridge (2003)

    Google Scholar 

  25. Wadsworth, C.P.: Semantics and pragmatics of the lambda-calculus. PhD thesis, Oxford University (1971)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Blanc, T., Lévy, JJ., Maranget, L. (2005). Sharing in the Weak Lambda-Calculus. In: Middeldorp, A., van Oostrom, V., van Raamsdonk, F., de Vrijer, R. (eds) Processes, Terms and Cycles: Steps on the Road to Infinity. Lecture Notes in Computer Science, vol 3838. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11601548_7

Download citation

  • DOI: https://doi.org/10.1007/11601548_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-30911-6

  • Online ISBN: 978-3-540-32425-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics