Affiliation:
1. Department of Computer Science, Iowa State University, 229 Atanasoff Hall, Ames, Iowa
2. Department of Computer Science and Engineering, University of Washington, Box 352350, Seattle, WA
Abstract
Many popular object-oriented programming languages, such as C++, Smalltalk-80, Java, and Eiffel, do not support multiple dispatch. Yet without multiple dispatch, programmers find it difficult to express binary methods and design patterns such as the "visitor" pattern. We describe a new, simple, and orthogonal way to add multimethods to single-dispatch object-oriented languages, without affecting existing code. The new mechanism also clarifies many differences between single and multiple dispatch.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
11 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Decidable tag-based semantic subtyping for nominal types, tuples, and unions;Proceedings of the 21st Workshop on Formal Techniques for Java-like Programs - FTfJP '19;2019
2. External Dispatch: Yet Another Object-Oriented Single and Multiple Dispatch Mechanism.;The Journal of Object Technology;2017
3. JavaGI;ACM Transactions on Programming Languages and Systems;2011-07
4. Multiple dispatch in reflective runtime environment;Computer Languages, Systems & Structures;2007-07
5. An efficient and flexible toolkit for composing customized method dispatchers;Software: Practice and Experience;2007