Proceedings of the 6th International Conference on Generative Programming and Component Engineering 2007
DOI: 10.1145/1289971.1289993
|View full text |Cite
|
Sign up to set email alerts
|

Open multi-methods for c++

Abstract: Multiple dispatch -the selection of a function to be invoked based on the dynamic type of two or more arguments -is a solution to several classical problems in object-oriented programming. Open multi-methods generalize multiple dispatch towards open-class extensions, which improve separation of concerns and provisions for retroactive design. We present the rationale, design, implementation, and performance of a language feature, called open multimethods, for C++. Our open multi-methods support both repeated an… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
11
0

Year Published

2008
2008
2014
2014

Publication Types

Select...
4
3
2

Relationship

2
7

Authors

Journals

citations
Cited by 18 publications
(11 citation statements)
references
References 23 publications
(17 reference statements)
0
11
0
Order By: Relevance
“…In the third study, we looked at the efficiency of hashing used in type switching on up to four scrutinees on some large real-world class hierarchies. In the fourth study, we compare the performance of matching N polymorphic arguments against double, triple and quadruple dispatch via visitor design pattern as well as open multi-methods extension to C++ [1]. In the fifth study we estimate the overhead of our and existing solutions to open patterns in comparison to a handcrafted code, while in the sixth study we compare their impact on the compilation times.…”
Section: Evaluation Methodologymentioning
confidence: 99%
See 1 more Smart Citation
“…In the third study, we looked at the efficiency of hashing used in type switching on up to four scrutinees on some large real-world class hierarchies. In the fourth study, we compare the performance of matching N polymorphic arguments against double, triple and quadruple dispatch via visitor design pattern as well as open multi-methods extension to C++ [1]. In the fifth study we estimate the overhead of our and existing solutions to open patterns in comparison to a handcrafted code, while in the sixth study we compare their impact on the compilation times.…”
Section: Evaluation Methodologymentioning
confidence: 99%
“…• Is non-intrusive and can be retroactively applied to existing types, both built-in and user-defined. 1 The library is available at http://parasol.tamu.edu/mach7/ Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. • Generalizes open type switch to multiple scrutinees and enables patterns in case clauses.…”
Section: Introductionmentioning
confidence: 99%
“…Pirkelbauer et al have presented Open Multi-Methods for C++ and have shown them to be efficient [Pirk07].…”
Section: Figure 4: Ide Views Of a Slot And The 'Objects' It Pertains Tomentioning
confidence: 99%
“…This can be performed in a number of different ways including, for example, the techniques used to implement multiple dispatch. We compare the efficiency of type switching on multiple arguments in comparison to other relational matching alternatives based on double, triple and quadruple dispatch [16], as well as our own implementation of open multi-methods for C++ [36].…”
Section: Comparison Of Alternatives For Relational Matchingmentioning
confidence: 99%