Advertisement

An introduction to fully-lazy supercombinators

  • Simon L Peyton Jones
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 242)

Abstract

Graph reduction has emerged as a poverful implementation model for lazy functional languages, especially for parallel machines. Supercombinators and full laziness are two of the key techniques available for the efficient implementation of graph reduction, and the purpose of this paper is to provide an accessible introduction to these techniques.

Keywords

Free Variable Extra Parameter Functional Language Graph Reduction Lambda Calculus 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [Curry69]
    Curry HB and Feys R, "Combinatory logic Vol II", North Holland, 1969.Google Scholar
  2. [De72]
    De Bruijn NG, "Lambda calculus notation with nameless dummies", Indag Math 34, pp381–392, 1972.Google Scholar
  3. [Fairb85]
    Fairbairn J, "Removing redundant laziness from supercombinators", Proc Aspenas Workshop on Implementation of Functional Languages, Chalmers Institute, Goteborg, Jan 1985.Google Scholar
  4. [Hend80]
    Henderson P, "Functional programming", Prentice Hall, 1980.Google Scholar
  5. [Hoffm82]
    Hoffman CM and O'Donnell MJ, "Programming with equations", ACM TOPLAS 4(1), pp83–112, Jan 1982.Google Scholar
  6. [Hudak85]
    Hudak P and Goldberg B, "Serial combinators", Proc IFIP Conference on Functional Programming and Computer Architecture, Nancy, Sept 1985.Google Scholar
  7. [Hudak85a]
    Hudak P and Goldberg B, "Serial combinators", Functional Programming and Computer Architecture, ed Jouannaud, LNCS 201, Springer Verlag, Sept 1985.Google Scholar
  8. [Hugh84]
    Hughes RJM, "The design and implementation of programming languages", PhD thesis, Programming Research Group, Oxford, Sept 1984.Google Scholar
  9. [Johns84]
    Johnsson T, "Efficient compilation of lazy evaluation", ACM Symposium on Compiler Construction, Montreal, pp58–69, June 1984.Google Scholar
  10. [Johns85]
    Johnsson T, "Lambda lifting", Proc Aspenas workshop on implementations of functional languages, Sweden, Feb 1985.Google Scholar
  11. [Johns85a]
    Johnsson T, "Lambda-lifting", in Functional Programming and Computer Architecture, ed Jouannaud, Springer Verlag LNCS 201, pp190–203, Feb 1985.Google Scholar
  12. [Kell85]
    Keller RM, "Distributed graph reduction from first principles", Proc Aspenas workshop on implementations of functional languages, Sweden, Feb 1985.Google Scholar
  13. [Klop80]
    Klop JW, "Combinatory reduction systems", PhD thesis, Mathematisch Centrum, Amsterdam, 1980.Google Scholar
  14. [Land64]
    Landin PJ, "The mechanical evaluation of expressions", Computer Journal, Jan 1964.Google Scholar
  15. [O'Don77]
    O'Donnell MJ, "Computing in systems described by equations", LNCS 58, Springer Verlag, 1977.Google Scholar
  16. [Peyt86]
    Peyton Jones SL, "The implementation of functional languages", Prentice Hall, 1986.Google Scholar
  17. [Stoy81]
    Stoy JE, "Denotational semantics", MIT Press, 1981.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1986

Authors and Affiliations

  • Simon L Peyton Jones
    • 1
  1. 1.Department of Computer ScienceUniversity College LondonUK

Personalised recommendations