ML-Style Typing, Lambda Lifting, and Partial Evaluation (1999)
| Venue: | In CLAPF ’99 |
| Citations: | 1 - 0 self |
BibTeX
@INPROCEEDINGS{Thiemann99ml-styletyping,,
author = {Peter Thiemann},
title = {ML-Style Typing, Lambda Lifting, and Partial Evaluation},
booktitle = {In CLAPF ’99},
year = {1999}
}
OpenURL
Abstract
. Lambda lifting transforms local function definitions in functional programming languages into global ones to facilitate their efficient implementation. When considered as a source-to-source transformation for an ML-style typed language, all published algorithms for lambda lifting break typability. We break down two representative lambda lifting algorithms into four elementary transformation steps, analyze their typing properties, and define alternative steps that preserve ML typability where appropriate. Putting the revised steps together, we define a lambda lifter that preserves ML-style typability. Our algorithm provides a starting point for implementing efficient generating extensions that perform offline partial evaluation for polymorphically typed languages. 1 Introduction Lambda lifting is one of the standard transformations in the tool box of the implementor of functional programming languages. Its task is to close local function definitions by parameterizing them...







