MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Efficient Multiple and Predicate Dispatching (1999) [33 citations — 3 self]

by Craig Chambers ,  Weimin Chen
Add To MetaCart

Abstract:

The speed of message dispatching is an important issue in the overall performance of object-oriented programs. We have developed an algorithm for constructing efficient dispatch functions that combines novel algorithms for efficient single dispatching, multiple dispatching, and predicate dispatching. Our algorithm first reduces methods written in the general predicate dispatching model (which generalizes single dispatching, multiple dispatching, predicate classes and classifiers, and pattern-matching) into ones written using a simpler multimethod dispatching model. Our algorithm then computes a strategy for implementing multiple dispatching in terms of sequences of single dispatches, representing the strategy as a lookup DAG. Finally, our algorithm computes an implementation strategy separately for each of the single dispatches, producing for each dispatch a dispatch tree, which is a binary decision tree blending class identity tests, class range tests, and table lookups. Our algorithm...

Citations

91 The Cartesian Product Algorithm: Simple and Precise Type Inference of Parametric Polymorphism – Agesen - 1995
49 Optimizing multi-method dispatch using compressed dispatch tables – Amiel, Gruber, et al. - 1994