Higher-Order and Symbolic Computation, 17(1/2)93-128
Program Adaptation via Output-Constraint Specialization
Siau-Cheng Khoo, School of Computing, National University of Singapore
Kun Shi, School of Computing, National University of Singapore
Abstract: In component-based software development, gluing of
two software components is usually achieved by defining an interface
specification, and creating wrappers on components to support the
interface. We believe that interface specification provides useful
information for specializing components. An interface may define
constraints on a component's inputs, as well as on its outputs. In
this paper, we propose a new approach to program specialization with
respect to output constraints. We provide the form in which an
efficient specialized program should be after such specialization, and
consider a variant of partial evaluation to achieve it. In the
process, we translate an output constraint into a characterization
function for a component's input, and define a specializer that uses
this characterization to guide the specialization process. We believe
this work will broaden the scope of program specialization, and
provide a framework for building more generic and versatile program
adaptation techniques.
Keywords: partial evaluation, specialization, weakest pre-condition
|
This article can be downloaded [here].
|
|