Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Using continued fractions for efficient subclass checking

Published: 01 April 1995 Publication History

Abstract

Dynamic subclass checks are common in many sub-paradigms of object-oriented programming. These checks may be simply implemented by following the superclass chain through the objects which represent the class hierarchy. However, in large or data-intensive applications, such as OODBMS, this simple checking strategy may have significant efficiency consequences. Very long class chains, which commonly occur, can cause much pointer following, which in turn has a knock-on effect on the overall performance of memory management. Measurements have shown that memory management is the most significant factor in the performance of large object-oriented systems.This paper describes a way of testing if one class is a subclass of another without involving any pointer accesses. On creation, each class is allocated a unique pair of integers, over which subclass tests may be performed using only arithmetic. The technique only works for single inheritance systems; the essence of the technique is to simulate the tree structure of the class hierarchy using the well-understood mathematical model of continued fractions.

References

[1]
1. Albano, A. "Type Hierarchies and Semantic Data Models", ACM SIGPLAN 83: Symposium on Programming Language Issues in Software Systems, San Francisco, pp. 178-186, 1983.
[2]
2. Albano A., GheUi G., Orsini R., "A Relationship Mechanism for a Strongly Typed Object-Oriented Datavbase Progarmming Language", Proc. 17th Int. Conf on VLDB, Barcelona, 1991, pp. 565-575.
[3]
3. Atkinson M.P., Birnie A., Jackson N. & Philbrow P. "Measuring Persistent Object Systems", Proc. 5th Int W'shop on Persistent Object Systems, San Miniato 1992 Springer-Verlag pp. 63-85.
[4]
4. Ciaccia, P., Maio, D. and Tiberio, P. "A Method for Hierarchy Processing in Relational Systems", Information Systems, vol. 14, 2, pp. 93-105, 1989.
[5]
5. Connor, R. C. H., McNaUy, D. J. and Morrison, R. "Subtyping and Assignment in Database Programming Languages", Proc. 3rd International Workshop on Database Programming Languages, 1991, Morgan Kaufmann.
[6]
6. Private communication with a number of commercial vendors; looking for a better reference!
[7]
7. Hosking A. & Moss J.E.B. "Object Fault Handling for Persistent Programming languages: a Performance Evaluation" Proc OOPSLA 93.
[8]
8. Olds, D. C. "Continued Fractions", New Mathematical Library, Random House, New York, 1963.
[9]
9. Skarra, A. and Zdonik, S. B. "An Object Server for Object Oriented databases", International Workshop on Object-Oriented Database Systems, Pacific Grove, California, pp. 196-204, 1986.
[10]
10. Stroustrup, B. "The C++ Programming Language", Addison-Wesley, 1986.
[11]
11. Wegner, P. and Zdonik, S. B. "Inheritance as an Incremental Modeification Mechanism of What Like is and Isn't Like", Lecture Notes in Computer Science, vol. 322, Springer - Verlag, pp. 55-77, 1988.
[12]
12. Zdonik, S. B. and Maier, D. "Readings in Object-Oriented Database Systems", Morgan Kaufmann, 1990.
[13]
13. Zezula, P. and Rabitti, F. "Navigation Index for an Object Store", Hawaii International Conference on System Sciences, Computer Society Press, Kauai, Hawaii, 1992.

Cited By

View all
  • (1996)Time and space efficient method-lookup for object-oriented programsProceedings of the seventh annual ACM-SIAM symposium on Discrete algorithms10.5555/313852.313882(42-51)Online publication date: 28-Jan-1996

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGPLAN OOPS Messenger
ACM SIGPLAN OOPS Messenger  Volume 6, Issue 2
April 1995
41 pages
ISSN:1055-6400
DOI:10.1145/212025
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 April 1995
Published in SIGPLAN-OOPS Volume 6, Issue 2

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)32
  • Downloads (Last 6 weeks)5
Reflects downloads up to 09 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (1996)Time and space efficient method-lookup for object-oriented programsProceedings of the seventh annual ACM-SIAM symposium on Discrete algorithms10.5555/313852.313882(42-51)Online publication date: 28-Jan-1996

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media