lambda lifting - 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. |

Browse

lamb roast

lamb succory

lamb's lettuce

lamb's-quarter

Lamb's-quarters

lamb-chop

Lambada-Calculus

Lambale

lambast

Lambaste

Lambative

lambchop

Lambda

lambda abstraction

lambda expression

lambda hyperon

**-- lambda lifting --**

Lambda moth

lambda particle

Lambda Prolog

lambda-calculus

Lambdacism

LambdaMOO

Lambdoid

Lambdoidal

lambency

Lambent

Lambert

Lambert pine

Lambert-Eaton syndrome

Lambertia

Lambertia formosa

Lambis

lamb succory

lamb's lettuce

lamb's-quarter

Lamb's-quarters

lamb-chop

Lambada-Calculus

Lambale

lambast

Lambaste

Lambative

lambchop

Lambda

lambda abstraction

lambda expression

lambda hyperon

Lambda moth

lambda particle

Lambda Prolog

lambda-calculus

Lambdacism

LambdaMOO

Lambdoid

Lambdoidal

lambency

Lambent

Lambert

Lambert pine

Lambert-Eaton syndrome

Lambertia

Lambertia formosa

Lambis