Optimal Type Lifting (1998)
| Venue: | In Second Workshop on Types in Compilation |
| Citations: | 13 - 2 self |
BibTeX
@INPROCEEDINGS{Saha98optimaltype,
author = {Bratin Saha and Zhong Shao},
title = {Optimal Type Lifting},
booktitle = {In Second Workshop on Types in Compilation},
year = {1998},
pages = {156--177}
}
OpenURL
Abstract
. Modern compilers for ML-like polymorphic languages have used explicit run-time type passing to support advanced optimizations such as intensional type analysis, representation analysis and tagless garbage collection. Unfortunately, maintaining type information at run time can incur a large overhead to the time and space usage of a program. In this paper, we present an optimal type-lifting algorithm that lifts all type applications in a program to the top level. Our algorithm eliminates all run-time type constructions within any core-language functions. In fact, it guarantees that the number of types built at run time is strictly a static constant. We present our algorithm as a type-preserving source-to-source transformation and show how to extend it to handle the entire SML'97 with higher-order modules. 1 Introduction Modern compilers for ML-like polymorphic languages [16, 17] usually use variants of the Girard-Reynolds polymorphic -calculus [5, 26] as their intermediate language (I...







