Binding-time analysis for polymorphic types

3Citations
Citations of this article
2Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Offline partial evaluators specialise programs with annotations which distinguish specialisation-time (or static) computations from run-time ones. These annotations are generated by a binding-time analyser, via type inference in a suitable type-system. Henglein and Mossin developed a type system which allows polymorphism in binding-times, so that the same code can be specialised with different computations being static at different uses. We extend their work to permit polymorphism in types as well. This is particularly important for separately compiled libraries. Following Henglein and Mossin, binding-times are passed as parameters during specialisation, but types are not. Instead, we pass coercion functions when necessary, which makes specialisation less "interpretive" than it would otherwise be. We keep track of the coercions needed by assigning qualified types to polymorphic functions. We also consider hand-annotations to provide limited user control over the binding-time analysis, which our prototype implementation showed to be necessary. © Springer-Verlag Berlin Heidelberg 2001.

Cite

CITATION STYLE

APA

Heldal, R., & Hughes, J. (2001). Binding-time analysis for polymorphic types. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 2244 LNCS, pp. 191–204). Springer Verlag. https://doi.org/10.1007/3-540-45575-2_19

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free