[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/232627.232639acmconferencesArticle/Chapter ViewAbstractPublication PagesicfpConference Proceedingsconference-collections
Article
Free access

Optimality and inefficiency: what isn't a cost model of the lambda calculus?

Published: 15 June 1996 Publication History

Abstract

We investigate the computational efficiency of the sharing graphs of Lamping [Lam90], Gonthier, Abadi, and Lévy [GAL92], and Asperti [Asp94], designed to effect so-called optimal evaluation, with the goal of reconciling optimality, efficiency, and the clarification of reasonable cost models for the λ-calculus. Do these graphs suggest reasonable cost models for the λ-calculus? If they are optimal, are they efficient?We present a brief survey of these optimal evaluators, identifying their common characteristics, as well as their shared failures. We give a lower bound on the efficiency of sharing graphs by identifying a class of λ-terms that are normalizable in Θ(n) time, and require Θ(n) "fan interactions," but require Ω(2n) bookkeeping steps. For [GAL92], we analyze this anomaly in terms of the dynamic maintenance of deBruijn indices for intermediate terms. We give another lower bound showing that sharing graphs can do Ω(2n) work (via fan interactions) on graphs that have no β-redexes. Finally, we criticize a proposed cost model for λ-calculus given by Frandsen and Sturtivant [FS91], showing by example that the model does not take account of the size of intermediate forms. Our example is a term requiring Θ(2n) steps while having proposed cost Θ(n). We propose some cost models that both reflect this parameter, and simultaneously reconcile key concepts from optimal reduction.

References

[1]
Andrea Asperti. Linear logic, comonads, and optimal reductions. Unpublished manuscript.
[2]
Andrea Asperti. 5o!e -- 1: optimizing optimal A-calculus implementations. Proceedings, RTA, 1995.
[3]
Andrea Asperti. On the complexity of betareduction. 1996 ACM Symposium on Principles of Programming Languages, pp. 110- 118.
[4]
Hendrik Barendregt. The Lambda Calculus: Its Syntax and Semantics. North Holland, 1984.
[5]
Peter van Erode Boas. Machi'~e models and simulation. Handbook of Theoretical Computer Science, volume A, pp. 1-66. North Holland, 1990.
[6]
Alonzo Church. The Cah:uli of Lambdaconversion. Princeton University Press, 1941.
[7]
John Field. On laziness and optimality in lambda interpreters: tools for specification and analysis. 1990 ACM Symposium on Principles of Programming Languages, pp. 1-15.
[8]
Gudmund S. Frandsen and Carl Sturtivant. What is an efficient implementatio~ of the A-calculus? 1991 ACM Conference on Functional Programming and Computer Architecture (J. Hughes, ed.), pp. 289-312.
[9]
Jean-Yves Girard. Geometry of interaction i: interpretation of System F. Logic Colloquim 1988, pp. 221-260. Elsevier (North Holland), 1989.
[10]
Georges Gonthier, Martin Abadi, and Jean- Jacques L~vy. The geometry of optimal lambda reduction. 1992 ACM Symposium on Principles of Programming Languages, pp. 15-26.
[11]
Stefano Guerrini. Sharing-graphs, sharingmorphisms, and (optimal))~-graph reductions (draft). Unpublished manuscript. June 16, 1995.
[12]
John Hughes. Supercombinators: a new implementation method for applicative languages. 1982 ACM Symposium on Lisp and Functional Programming, pp. 1-10.
[13]
Vinod Kathail. Optimal interpreters for Iambdacalculus based functional languages. Ph.D. Thesis, MIT, May 1990.
[14]
John Lamping. An algorithm for optimal lambda calculus reduction. 1990 ACM Symposium on Principles of Programming Languages, pp. 16-30.
[15]
Jean-Jacques L~vy. Rdductio~s correcies et optimales dans le lambda-caIcuI. Th~se d'Etat, Universit~ Paris 7, 1978.
[16]
Jean-Jacques L~vy. Optimal reductions in the lambda-calcuIus. To H. B. Curry: Essays in Combinatory Logic, Lambda Calculus and Formalism, (Jonathan P. Seldin and J. Roger Hindley, editors), pp. 159-191. Academic Press, 1980.
[17]
Harry G. Mairson and Fritz Henglein. The complexity of type inference for higher-order typed lambda calculi. Journal of Functional Programming 4:4 (October 1994), pp. 435-478.
[18]
Ian Mackie. The geometry of interaction machine. 1995 ACM Symposium on Principles of Programming Languages, pp. 198-208.
[19]
Simon Peyton-Jones. The Implementation of Functional Programming Languages. Prentice-HaU~ 1987.
[20]
David A. Turner. New implementation techniques for applicative languages. Software Practice and Experience 9 (1979), pp. 31-49.

Cited By

View all
  • (2017)Compiling untyped lambda calculus to lower-level code by game semantics and partial evaluation (invited paper)Proceedings of the 2017 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation10.1145/3018882.3020004(1-11)Online publication date: 2-Jan-2017
  • (2016)Token-passing Optimal Reduction with Embedded Read-backElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.225.7225(45-54)Online publication date: 10-Sep-2016
  • (2014)Beta reduction is invariant, indeedProceedings of the Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)10.1145/2603088.2603105(1-10)Online publication date: 14-Jul-2014
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICFP '96: Proceedings of the first ACM SIGPLAN international conference on Functional programming
June 1996
273 pages
ISBN:0897917707
DOI:10.1145/232627
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 June 1996

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

ICFP96
Sponsor:
ICFP96: International Conference on Functional Programming
May 24 - 26, 1996
Pennsylvania, Philadelphia, USA

Acceptance Rates

ICFP '96 Paper Acceptance Rate 25 of 83 submissions, 30%;
Overall Acceptance Rate 333 of 1,064 submissions, 31%

Upcoming Conference

ICFP '25
ACM SIGPLAN International Conference on Functional Programming
October 12 - 18, 2025
Singapore , Singapore

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)160
  • Downloads (Last 6 weeks)26
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2017)Compiling untyped lambda calculus to lower-level code by game semantics and partial evaluation (invited paper)Proceedings of the 2017 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation10.1145/3018882.3020004(1-11)Online publication date: 2-Jan-2017
  • (2016)Token-passing Optimal Reduction with Embedded Read-backElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.225.7225(45-54)Online publication date: 10-Sep-2016
  • (2014)Beta reduction is invariant, indeedProceedings of the Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)10.1145/2603088.2603105(1-10)Online publication date: 14-Jul-2014
  • (2013)Least upper bounds on the size of confluence and church-rosser diagrams in term rewriting and λ-calculusACM Transactions on Computational Logic10.1145/252893414:4(1-28)Online publication date: 28-Nov-2013
  • (2008)The weak lambda calculus as a reasonable machineTheoretical Computer Science10.1016/j.tcs.2008.01.044398:1-3(32-50)Online publication date: 20-May-2008
  • (2008)Complete LazinessElectronic Notes in Theoretical Computer Science (ENTCS)10.1016/j.entcs.2008.03.058204(129-145)Online publication date: 1-Apr-2008
  • (2007)Light Logics and Optimal ReductionProceedings of the 22nd Annual IEEE Symposium on Logic in Computer Science10.1109/LICS.2007.27(421-430)Online publication date: 10-Jul-2007
  • (2006)An invariant cost model for the lambda calculusProceedings of the Second conference on Computability in Europe: logical Approaches to Computational Barriers10.1007/11780342_11(105-114)Online publication date: 30-Jun-2006
  • (2005)Lambda-Calculus with Director StringsApplicable Algebra in Engineering, Communication and Computing10.1007/s00200-005-0169-915:6(393-437)Online publication date: 1-Apr-2005
  • (2005)On the dynamics of sharing graphsAutomata, Languages and Programming10.1007/3-540-63165-8_183(259-269)Online publication date: 8-Jun-2005
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media