Lambda lifting is a
meta-process that restructures a
computer program so that functions are defined independently of each other in a global
scope. An individual "lift" transforms a local
function into a global function. It is a two step process, consisting of;
- Eliminating free variables in the function by adding parameters.
- Moving functions from a restricted scope to broader or global scope.