|Reference||/Balzer, 1976/ On the Transformational Implementation approach to programming|
In the transformational implementation approach, an abstract specification is first constructed, then converted into a concrete optimized one by successive transformations. The key to this approach is that while the transformations are selected by the programmer, the transformation is actually performed by the computer system. These transformations are stored in a catalog maintained by the computer system together with the conditions under which they are equivalence-preserving. The applicability conditions, checked by the system, must be satisfied before the transformation can be applied, which ensures that any optimized program produced must be a valid implementation of the abstract program specification.
Programmers would select particular transformations because they help optimize the program. Since the majority of such optimization lies in the strategic decisions of algorithm selection and data representation rather in tactical decisions of redundant computation elimination currently found in state-of-art compilers, the catalog of transformations should reflect this bias.
The transformational implementation approach thus represents a partial automation of the optimization process which follows the abstract specification. It automates the implementation of the optimization process, but not the design (selection) of those optimizations.
Publications on Lifecycle Models
|GDPA Online Last Updated 01.May.2002 Updated by Webmaster Last Revised 01.May.2002 Revised by Webmaster|