Re: What is "lambda lifting"?

hbaker@netcom.com (Henry Baker)
Sun, 12 Nov 1995 17:58:36 GMT

          From comp.compilers

Related articles
What is "lambda lifting"? md94-tar@nada.kth.se (1995-11-09)
Re: What is "lambda lifting"? hbaker@netcom.com (1995-11-12)
Re: What is "lambda lifting"? jue@cs.tu-berlin.de (1995-11-13)
Re: What is "lambda lifting"? johnsson@cs.chalmers.se (1995-12-01)
| List of all articles for this month |

Newsgroups: comp.compilers
From: hbaker@netcom.com (Henry Baker)
Keywords: functional, optimize
Organization: nil organization
References: 95-11-074
Date: Sun, 12 Nov 1995 17:58:36 GMT

Functional programming languages get stronger by doing 'lambda lifting'. :-)


To a first approximation, it is a way to avoid creating closures by
adding parameters to the procedures that call them so that the information
can be passed to the non-closure procedure (no free variables) when it
needs it.
The technical term for these non-closure procedures is 'combinators'.


It is well-described in


Peyton-Jones, Simon L. The Implementation of Functional Programming
Languages. Prentice-Hall, 1987, ISBN 0-13-453333-X or 0-13-453325-9 PBK.


One of the canonical references is


Johnsson, T. 1985. "Lambda Lifting: transforming programs to recursive
equations". In Functional Programming Languages and Computer Architecture,
Springer-Verlag LNCS 201, 1985.


--
www/ftp directory:
ftp://ftp.netcom.com/pub/hb/hbaker/home.html
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.