Boost logo

Boost :

Subject: Re: [boost] Boost.Multimethod proposal
From: Edward Diener (eldiener_at_[hidden])
Date: 2009-08-22 23:58:52


Jeffrey Bosboom wrote:
> Edward Diener wrote:
>> What is a practical use for multi-methods ?
>
> Multimethods (assuming this library uses the term as it's commonly
> understood) are like virtual functions that are dispatched on the
> dynamic types of their arguments as well as the type of *this. You can
> get this effect through double dispatch, but it requires a bit of
> plumbing and requires two virtual calls (which for some people is a
> large amount of overhead). (Of course, multimethods have overhead too.)

This does not explain the practical purpose of multimethods. I know what
virtual functions are, of course. What in multimethods improves on the
polymorphic capabilities of virtual functions that make them a practical
choice for use over normal polymorphism.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk