Multimethods offer several well-known advantages over the single dispatching of conventional object-oriented languages, including a simple solution to the “binary method” problem, cleaner implementations of the “visitor,” “strategy,” and similar design patterns, and a form of “open objects.” However, previous work on statically typed multimethods whose arguments are treated symmetrically has required the whole program to be available in order to perform typechecking. We describe Dubious, a simple core language including first-class generic functions with symmetric multimethods, a classless object model, and modules that can be separately typechecked. We identify two sets of restrictions that ensure modular type safety for Dubious as well as an interesting intermediate point between these two.We have proved each of these modular type systems sound.
CITATION STYLE
Millstein, T., & Chambers, C. (1999). Modular statically typed multimethods. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 1628, pp. 279–303). Springer Verlag. https://doi.org/10.1007/3-540-48743-3_13
Mendeley helps you to discover research relevant for your work.