Translation

powered by

Computing (FOLDOC) dictionary

let floating

programming A program transformation used in functionalprogramming to implement full laziness. E.g. the function

f x = x + sqrt 4

can be expressed as

f x = let t = sqrt 4 in x + t

but note that t does not depend on the argument x so we can

automatically transform this to

t = sqrt 4

f x = x + t

Making t into a global constant which need only be evaluated

at most once, rather than every time f is called. The general

idea is to float each subexpression as far out (toward the

top level) as possible to maximise sharing.