ACM Home Page
Please provide us with feedback. Feedback
A program integration algorithm that accommodates semantics-preserving transformations
Full text PdfPdf (3.07 MB)
Source ACM Transactions on Software Engineering and Methodology (TOSEM) archive
Volume 1 ,  Issue 3  (July 1992) table of contents
Pages: 310 - 354  
Year of Publication: 1992
ISSN:1049-331X
Authors
Wuu Yang  Univ. of Wisconsin, Madison
Susan Horwitz  Univ. of Wisconsin, Madison
Thomas Reps  Univ. of Wisconsin, Madison
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 37,   Citation Count: 10
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/131736.131756
What is a DOI?

ABSTRACT

Given a program Base and two variants, A and B, each created by modifying separate copies of Base, the goal of program integration is to determine whether the modifications interfere, and if they do not, to create an integrated program that includes both sets of changes as well as the portions of Base preserved in both variants. Text-based integration techniques, such as the one used by the Unix diff3 utility, are obviously unsatisfactory because one has no guarantees about how the execution behavior of the integrated program relates to the behaviors of Base, A, and B. The first program-integration algorithm to provide such guarantees was developed by Horwitz et al.[13]. However, a limitation of that algorithm is that it incorporates no notion of semantics-preserving transformations. This limitation causes the algorithm to be overly conservative in its definition of interference. For example, if one variant changes the way a computation is performed (without changing the values computed) while the other variant adds code that uses the result of the computation, the algorithm would classify those changes as interfering. This paper describes a new integration algorithm that is able to accommodate semantics-preserving transformations.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
ALLEN, F. E. AND COCKE, J.A. A catalogue of optimizing transformations. In Deszgn and Optimtzation of Compilers, R. Rustin, Ed. Prentice-Hall, Englewood Cliffs, NJ, 1972, pp. 1-30.
4
5
 
6
7
 
8
9
 
10
FEATHER, M.S. Detecting interference when merging specification evolutions. Unpublished report, Information Sciences Inst.. Univ. of Southern California, Marina del Rey. CA, 1989.
11
 
12
HOPCROFT, j.E. An n log n algorithm for minimizing the states of a finite automaton. In The Theory of Machines and Computations, 1971, pp. 189-196.
13
 
14
15
 
16
17
18
19
 
20
RAMALINGAM, G. Personal commumcabon 1989
 
21
RAMALINGAM, G. AND REPS, T. Semantics of program representation graphs. Tech Rep. 900, Dept. of Computer Sciences, Univ. of Wisconsin, Madison, Dec. 1989.
 
22
REPS, T. AND YANG, W. The semantics of program shcing. Tech. Rep. 777, Dept. of Computer Sciences, Univ. of Wisconsin, Madison, June, 1988
 
23
 
24
25
 
26
WEISER, M. Program slicing. IEEE Trans Soflw. Eng. SE-10, 4 (July, 1984), 352-357.
 
27
YANG, W., HORWlTZ, S., AND REPS, T Detecting program components w~th equivalent behaviors Tech Rep. 840, Dept of Computer Sciences, Umv. of Wisconsin, Madison, Apr. 1989.
28
 
29

CITED BY  10


REVIEW

"Peter N. van den Bosch : Reviewer"

A program may be developed into two variants—possibly because it is available on a popular operating system and is enhanced independently and with different intent at two sites—which do not interfere in the sense that they expect a  more...

Collaborative Colleagues:
Wuu Yang: colleagues
Susan Horwitz: colleagues
Thomas Reps: colleagues