TitlePredicate dispatching: A unified theory of dispatch
Publication TypeConference Paper
Year of Publication1998
AuthorsErnst MD, Kaplan CS, Chambers C
Conference NameECOOP '98: the 12th European Conference on Object-Oriented Programming
Pagination186–211
Date or Month PublishedJuly
Conference LocationBrussels, Belgium
Abstract\em Predicate dispatching generalizes previous method dispatch mechanisms by permitting arbitrary predicates to control method applicability and by using logical implication between predicates as the overriding relationship. The method selected to handle a message send can depend not just on the classes of the arguments, as in ordinary object-oriented dispatch, but also on the classes of subcomponents, on an argument's state, and on relationships between objects. This simple mechanism subsumes and extends object-oriented single and multiple dispatch, ML-style pattern matching, predicate classes, and classifiers, which can all be regarded as syntactic sugar for predicate dispatching. This paper introduces predicate dispatching, gives motivating examples, and presents its static and dynamic semantics. An implementation of predicate dispatching is available.
Downloadsftp://ftp.cs.washington.edu/homes/chambers/gud.tar.gz implementation https://projectsweb.cs.washington.edu/research/projects/cecil/www/Gud/ma... manual https://homes.cs.washington.edu/~mernst/pubs/dispatching-ecoop98.pdf PDF https://homes.cs.washington.edu/~mernst/pubs/dispatching-ecoop98-slides.pdf slides (PDF)
Citation KeyErnstKC98