Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Software Specialization Via Symbolic Execution
Coen-Porisini A., De Paoli F., Ghezzi C., Mandrioli D. IEEE Transactions on Software Engineering17 (9):884-899,1991.Type:Article
Date Reviewed: Feb 1 1993

The authors make a contribution to software reusability through the use of program transformation tools. The idea is, given the specification and implementation for a software component or an entire program, to help restructure the implementation through a technique called specialization. When a software module with a particular functionality is needed, a library of reusable modules of generalized functionality is searched for a suitable module. In general, candidate modules will require some transformation. For example, their functionalities must be restricted in order to improve efficiency, that is, they must be specialized for a particular application. Suppose that the generalized module P is a function mapping its domain D P to its range R P and that the desired module M will have the same functionality as P but with a domain D M ⊂ D P, then the aim of the specialization will be to transform P into a P′ that is more efficient than P. For example, if P contains the statement “if C then S 1 else S 2,” and D M ⊂ D P implies that C is always true, the statement may be transformed into S 1. In this paper, the authors discuss specialization through symbolic execution.

The paper describes the process of symbolic execution and simplification used for the specialization of a program; this process is defined formally using denotational semantics. Other specialization steps such as loop refolding and the application of conventional source-level optimization techniques are described. A complete specialization environment for Ada programs and a complete example are also presented. Finally, the authors assess the work and discuss further developments and applications, particularly in the area of object-oriented languages.

Reviewer:  Michael Marcotty Review #: CR116226
Bookmark and Share
 
Reusable Software (D.2.m ... )
 
 
Interactive Environments (D.2.6 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Reusable Software": Date
A systematic catalogue of reusable abstract data types
Uhl J. (ed), Schmid H., Springer-Verlag New York, Inc., New York, NY, 1990. Type: Book (9780387532295)
Aug 1 1991
Experience in constructing Ada programs from non-trivial reusable modules
Levy P., Ripken K.  Ada-components: libraries and tools (, Stockholm, Sweden, May 26-28, 1987)1111987. Type: Proceedings
Oct 1 1988
Reflections on reusable software and software components
Dusink E., van Katwijk J.  Ada-components: libraries and tools (, Stockholm, Sweden, May 26-28, 1987)1261987. Type: Proceedings
Oct 1 1988
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy