2003
DOI: 10.7146/brics.v10i26.21794
|View full text |Cite
|
Sign up to set email alerts
|

Lambda-Lifting in Quadratic Time

Abstract: Lambda-lifting is a program transformation used in compilers and in partial evaluators and that operates in cubic time. In this article, we show how to reduce this complexity to quadratic time, and we present a flow-sensitive lambda-lifter that also works in quadratic time.Lambda-lifting transforms a block-structured program into a set of recursive equations, one for each local function in the source program. Each equation carries extra parameters to account for the free variables of the corresponding local fu… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2011
2011
2011
2011

Publication Types

Select...
1

Relationship

0
1

Authors

Journals

citations
Cited by 1 publication
(2 citation statements)
references
References 21 publications
0
2
0
Order By: Relevance
“…Lambda-lifting, also called closure-conversion, is a standard technique to remove free variables. It is introduced by Johnsson [25] and made more efficient by Danvy and Schultz [11]. Fischbach and Hannan prove its correctness for the Scheme language [17].…”
Section: Transformation Techniquesmentioning
confidence: 99%
See 1 more Smart Citation
“…Lambda-lifting, also called closure-conversion, is a standard technique to remove free variables. It is introduced by Johnsson [25] and made more efficient by Danvy and Schultz [11]. Fischbach and Hannan prove its correctness for the Scheme language [17].…”
Section: Transformation Techniquesmentioning
confidence: 99%
“…Lambda-lifting [25] is a standard technique to eliminate free variables in functional languages. It proceeds in two phases [11]. In the first pass ("parameter lifting"), free variables are replaced by local, bound variables.…”
Section: Lambda-liftingmentioning
confidence: 99%