lambda lifting

Computing Dictionary

lambda lifting definition


A program transformation to remove free variables. An expression containing a free variable is replaced by a function applied to that variable. E.g.
f x = g 3 where g y = y + x
x is a free variable of g so it is added as an extra argument:
f x = g 3 x where g y x = y + x
Functions like this with no free variables are known as supercombinators and are traditionally given upper-case names beginning with "$". This transformation tends to produce many supercombinators of the form f x = g x which can be eliminated by eta reduction and substitution. Changing the order of the parameters may also allow more optimisations. References to global (top-level) constants and functions are not transformed to function parameters though they are technically free variables.
A closely related technique is closure conversion. See also Full laziness.

The Free On-line Dictionary of Computing, © Denis Howe 2010 http://foldoc.org
Cite This Source
Explore Dictionary.com
Previous Definition: lambda hyperon
Next Definition: lambda particle
Words Near: lambda lifting
More from Thesaurus.com
Synonyms and Antonyms for lambda lifting
More from Reference.com
Search for articles containing lambda lifting
More from Dictionary.com Translator
Dictionary.com Word FAQs

Dictionary.com presents 366 FAQs, incorporating some of the frequently asked questions from the past with newer queries.

Copyright © 2014 Dictionary.com, LLC. All rights reserved.
  • Please Login or Sign Up to use the Recent Searches feature