A Fast and Efficient Method Dispatching Statically Typed MultipleInheritance Object-Oriented Languages
Inheritance is an invaluable mechanism for object-oriented programming. The benefits of inheritance have been well recognized over the last few years. However, these benefits typically come at the expense of run time overhead in time and space. While an efficient late binding mechanism based on indexing has been popularly used in supporting single inheritance, a mechanism for multiple inheritance which can provide a comparable efficiency has been sought. In this paper, we describe a late binding mechanism for statically typed object-oriented programming with multiple inheritance. Our technique, based on the partitioning of a multiple inheritance hierarchy, is a significant improvement in both space and time over existing techniques. The fast and efficient late binding mechanism called hierarchy partitioning is presented. An analysis of the predicted performance of the technique and a detailed comparison with other related work are also provided.