Module-sensitive program specialisation
- 1 May 1997
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 32 (5) , 206-214
- https://doi.org/10.1145/258915.258934
Abstract
We present an approach for specialising large programs, such as programs consisting of several modules, or libraries. This approach is based on the idea of using a compiler generator (cogen) for creating generating extensions. Generating extensions are specialisers specialised with respect to some input program. When run on some input data the generating extension produces a specialised version of the input program. Here we use the cogen to tailor modules for specialisation. This happens once and for all, independently of all other modules. The resulting module can then be used as a building block for generating extensions for complete programs, in much the same way as the original modules can be put together into complete programs. The result of running the final generating extension is a collection of residual modules, with a module structure derived from the original program.Keywords
This publication has 6 references indexed in Scilit:
- Partial evaluation and separate compilationPublished by Association for Computing Machinery (ACM) ,1997
- Polymorphic recursion and subtype qualifications: Polymorphic binding-time analysis in polynomial timePublished by Springer Nature ,1995
- Polymorphic binding-time analysisPublished by Springer Nature ,1994
- Extracting polyvariant binding time analysis from polyvariant specializerPublished by Association for Computing Machinery (ACM) ,1993
- Comprehending monadsPublished by Association for Computing Machinery (ACM) ,1990
- Mix: A self-applicable partial evaluator for experiments in compiler generationHigher-Order and Symbolic Computation, 1989