Subject: Re: [boost] Multi-methods and type switch
From: Camille GILLOT (k1000.jlo_at_[hidden])
Date: 2014-03-06 06:51:41
Actually, I have used this paper for the dispatch table generation.
I also used the table compression method from .
 "Fast Algorithms for Compressed Multi-Method Dispatch Tables Generation" by Dujardin, Amiel, Simon
For now, the library works as follows :
- classes to be used must inherit a CRTP class defining the small integer tag
- multimethods are declared out of class
- multimethods definitions may be spread across several compilation units
- at first call to the multimethod, the dispatch table is computed using the algorithms from  and 
- subsequent calls use the memorized table
Do you think this code may reach interest for inclusion in boost ?
Of course, I plan to support multiple inheritance before any submission.
Le mercredi 5 mars 2014 20:26:06 Vinícius dos Santos Oliveira a écrit :
> Em Qui, 2014-03-06 às 00:05 +0100, Camille GILLOT escreveu:
> > For now, I have implemented a toy library for open multiple dispatch.
> > It is
> > based on compressed dispatch tables. It still just supports single
> > inheritance
> > and needs to attach integer tags to the dispatched class hierarchy.
> You may be interested in read this Bjarne's paper on the subject, if
> I understood what you mean by "multiple dispatch" correctly.
>  http://www.stroustrup.com/multimethods.pdf
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk