Abstract
This paper presents the DT Framework, a collection of object-oriented classes representing a generalized framework for inheritance management and table-based method dispatch. It demonstrates how most existing table-based dispatch techniques can be generalized and made incremental, so that relevant entries in the dispatch table are modified each time a selector or class hierarchy link is added or removed. The incremental nature makes the framework highly efficient, with low millisecond average modification time, and supports table-based dispatch even in schema-evolving languages. During table maintenance, the framework detects and records inheritance conflicts, and maintains information useful during compile-time optimizations.
Preview
Unable to display preview. Download preview PDF.
References
P. Andre and J.C. Royer. Optimizing method search with lookup caches and incremental coloring. In OOPSLA'92 Conference Proceedings, 1992.
Craig Chambers. Object-oriented multi-methods in cecil. In ECOOP'92 Conference Proceedings, 1992.
Craig Chambers. Predicate classes. In ECOOP'93 Conference Proceedings, 1993.
Brad Cox. Object-Oriented Programming, An Evolutionary Approach. Addison-Wesley, 1987.
Jeffrey Dean, David Grove, and Craig Chambers. Optimzation of object-oriented programs using static class hierarchy analysis. In ECOOP'95 Conference Proceedings, 1995.
K. Driesen and U. Holzle. Minimizing row displacement dispatch tables. In OOPSLA'95 Conference Proceedings, 1995.
K. Driesen, U. Holzle, and J. Vitek. Message dispatch on pipelined processors. In ECOOP'95 Conference Proceedings, 1995.
R. Dixon, T. McKee, P. Schweizer, and M. Vaughan. A fast method dispatcher for compiled languages with multiple inheritance. In OOPSLA'89 Conference Proceedings, 1989.
Karel Driesen. Method lookup strategies in dynamically typed object-oriented programming languages. Master's thesis, Vrije Universiteit Brussel, 1993.
L. Peter Deutsch and Alan Schiffman. Efficient implementation of the smalltalk-80 system. In Principles of Programming Languages, Salt Lake City, UT, 1994.
M.A. Ellis and B. Stroustrup. The Annotated C++ Reference Manual. Addison-Wesley, 1990.
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
A. Goldberge and David Robson. Smalltalk-80: The Language and its Implementation. Addison-Wesley, 1983.
Urs Holzle, Craig Chambers, and David Ungar. Optimizing dynamically-typed object oriented languages with polymorphic inline caches. In ECOOP'91 Conference Proceedings, 1991.
Wade Holst and Duane Szafron. Inheritance management and method dispatch in reflexive object-oriented languages. Technical Report TR-96-27, University of Alberta, Edmonton, Canada, 1996.
Glenn Krasner. Smalltalk-80: Bits of History, Words of Advice. Addison-Wesley, Reading, MA, 1983.
M.T. Ozsu, R.J. Peters, D. Szafron, B. Irani, A. Lipka, and A. Munoz. Tigukat: A uniform behavioral objectbase management system. In The VLDB Journal, pages 100–147, 1995.
Jan Vitek and R. Nigel Horspool. Taming message passing: Efficient method lookup for dynamically typed languages. In ECOOP'94 Conference Proceedings, 1994.
Jan Vitek and R. Nigel Horspool. Compact dispatch tables for dynamically typed programming languages. In Proceedings of the Intl. Conference on Compiler Construction, 1996.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Holst, W., Szafron, D. (1997). A general framework for inheritance management and method dispatch in object-oriented languages. In: Akşit, M., Matsuoka, S. (eds) ECOOP'97 — Object-Oriented Programming. ECOOP 1997. Lecture Notes in Computer Science, vol 1241. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053383
Download citation
DOI: https://doi.org/10.1007/BFb0053383
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63089-0
Online ISBN: 978-3-540-69127-3
eBook Packages: Springer Book Archive