Automatic program specialization is a software engineering technique that configures a program fragment by generating an implementation dedicated to a specific usage context. Given a generic component that solves a whole family of problems and that is implemented in a standard programming language, program specialization can automatically configure this component by generating a specialized implementation. We consider automatic program specialization implemented using partial evaluation, which performs aggressive interprocedural constant propagation of all data types, and performs constant folding and control-flow simplifications based on the usage context. Automatic program specialization has recently been defined in the context of object-oriented languages, and is here referred to as object-oriented program specialization. As part of this work, we have developed an automatic program specializer for Java, named JSpec, which has been shown to give significant execution-time speedups on large programs.
European Conference on Object Oriented Programming: Object-oriented Technology. Ecoop 2001 Workshop Reader Ecoop 2001 Workshops, Panel, and Posters. Workshop on Generative Programming. Wgp'01, 2001
Main Research Area:
Workshop on Generative Programming, ECOOP'2001, 2001