[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article

Handling the subclassing anomaly with Object Teams

Published: 01 August 2005 Publication History

Abstract

Existing Java software or libraries can evolve via subclassing. Unfortunately, subclassing may not properly support code adaptation when there are dependencies between classes. More precisely, subclassing in collections of related classes may require reimplementation of otherwise valid classes. This problem is defined as the subclassing anomaly, which is an issue when software evolution or code reuse is a goal of the programmer who is using existing classes. Object Teams offers an implicit fix to this problem and is largely compatible with the existing JVM's. In this paper, we evaluate how well Object Teams succeeds in providing a solution for a complex, real world project. Our results indicate that while Object Teams is a suitable solution for simple examples, it does not meet the requirements for large scale projects. The reasons why Object Teams fails in certain usages may prove useful to those who create linguistic modifications in languages or those who seek new methods for code adaptation.

References

[1]
Clifton, C., Leavens, G., Chambers, C., and Millstein, T., 2000. MultiJava: Modular Open Classes and Symmetric Multiple Dispatch for Java. OOPSLA'00, Minneapolis, Minnesota, October 2000, ACM Press, New York, 130--145. Available from <http://www.cs.iastate.edu/~cclifton/multijava-data/papers/TR00-06.pdf>
[2]
Herrmann, S., 2004. Confinement and Representation Encapsulation in Object Teams. Technical Report June 2004, Technical University Berlin. Available from <http://www.objectteams.org/publications/TR2004-06.pdf>.
[3]
Jikes Homepage. <http://www-124.ibm.com/developerworks/oss/jikes/>.
[4]
Joy, B., et al. 2000. Java Language Specification, Addison-Wesley Pub Co, New York, New York.
[5]
Laffra, C., 2003. Java Bytecode Manipulation with JikesBT.
[6]
Nystrom N., S. Chong, and A. Myers. Scalable extensibility via nested inheritance. Proceedings of Object Oriented Programming, Systems, Languages, and Applications, OOPLSA 04, October 24-8, 2004, Vancouver, British Columbia, ACM, 99--115.
[7]
Object Teams Language Definition. <http://www.objectteams.org/def/index.html>.
[8]
Palsberg J., and Jay, C. B., 1997. The essence of the visitor pattern. Technical Report 05, University of Technology, Sydney, Australia.
[9]
Radenski, A., 2004. Anomaly-Free Component Adaptation with Class Overriding, Journal of Systems and Software 71 (2004), 37--48.
[10]
Radenski, A., 2003. The Subclassing Anomaly in Compiler Evolution. International Journal on Information Theories and Applications, Institute of Information Theories and Applications, Sofia, Vol. 10, No 4, 2003, 394--399.
[11]
Tatsubori, M., 1999. An Extension Mechanism for the Java Language. Master's dissertation, University of Tsukuba, Tsukuba City, Japan. Available from <http://www.csg.is.titech.ac.jp/openjava/papers/mich_thesis99.pdf>.
[12]
Watt, D. and Brown, D., 2000. Programming Language Processors in Java: Compilers and Interpreters, Prentice Hall, New York, New York.
[13]
Zenger, M., 2002. Evolving software with extensible modules. In: International Workshop on Unanticipated Software Evolution, Málaga, Spain. Available from <http://zenger.gmxhome.de/papers/use02.pdf>.

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 40, Issue 8
August 2005
32 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/1089851
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 August 2005
Published in SIGPLAN Volume 40, Issue 8

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 155
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media