Title
Refactoring and representation independence for class hierarchies: extended abstract
Abstract
Refactoring transformations are important for productivity and quality in software evolution. Modular reasoning about semantics preserving transformations is difficult even in typed class-based languages because transformations can change the internal representations for multiple interdependent classes and because encapsulation can be violated by pointers to mutable objects. In this paper, an existing theory of representation independence for a single class, based on a simple notion of ownership confinement, is generalized to a hierarchy of classes and used to prove several refactoring laws. Soundness of these laws was an open problem in an ongoing project on formal refactoring tools. The utility of the laws is shown in a case study. Shortcomings of the theory are described as a challenge to other approaches to heap encapsulation and relational reasoning for classes.
Year
DOI
Venue
2010
10.1145/1924520.1924528
FTfJP@ECOOP
Field
DocType
Citations 
Pointer (computer programming),Open problem,Programming language,Computer science,Theoretical computer science,Heap (data structure),Soundness,Software evolution,Hierarchy,Code refactoring,Semantics
Conference
3
PageRank 
References 
Authors
0.44
12
3
Name
Order
Citations
PageRank
Leila Silva17810.11
David Naumann2110184.12
Augusto Sampaio39613.42