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. |
Year | Venue | Keywords |
---|---|---|
2001 | Ershov Memorial Conference | type inference,qualified type,different computation,offline partial evaluator,binding-time analyser,binding-time analysis,coercion function,type system,different use,polymorphic types,limited user control,polymorphism,partial evaluation |
Field | DocType | ISBN |
Analyser,User control,Programming language,Binding time analysis,Partial evaluation,Computer science,Algorithm,Type inference,Type variable,Distributed computing,Computation | Conference | 3-540-43075-X |
Citations | PageRank | References |
3 | 0.39 | 13 |
Authors | ||
2 |
Name | Order | Citations | PageRank |
---|---|---|---|
Rogardt Heldal | 1 | 331 | 36.56 |
John Hughes | 2 | 1573 | 174.22 |