AMDG On 01/19/2018 11:23 AM, Jean-Louis Leroy via Boost wrote:
in 2013 I posted a proposal for an "open multi-methods" library, see here: https://lists.boost.org/Archives/boost/2013/07/205383.php Due to insufficient interest, I did not go forward with a formal submission, and I published my work on github, under the name yomm11.
<snip>> Well I am just touching base to see if things have evolved and if there might now be an interest in seeing this in Boost.
A couple of random comments: - I feel like it should be possible to get rid of YOMM2_END by moving the function body out-of-line or using a lambda or something. - The documentation isn't clear on how the one-definition-rule applies (unless I missed it). My default assumption would be that YOMM2_DEFINE for a given overload should appear in exactly one translation unit, and that YOMM2_DECLARE and YOMM2_CLASS may appear in multiple translation units so long as the declarations are identical, but I notice that they're /all/ using unnamed namespaces. All of your examples only use a single source file, so I can't really guess your intentions from usage either. - I'm curious why I would ever want to use the "cute" names when they're actually longer than the YOMM2 names. In Christ, Steven Watanabe