
On May 17, 2005, at 10:22 PM, Larry Evans wrote:
On 05/17/2005 10:07 PM, Jaakko Järvi wrote:
make_variant_over<Seq>::type creates a variant type from an MPL Sequence. Is there an operation that would do the opposite, create an MPL sequence from a variant? I cannot just use the type parameter list as such because the types that stand for an empty type are different in both libraries: boost::detail::variant::void_ in variant, and something else in MPL. I'd suggest making variant part of mpl. With that, the problem disappears.
Yes, variant, mpl, tuple (or fusion), should play well together. A good first step would be to start using the same type to mark that no type was specified (instead of the variations void_, null_t, ...).
Also, variant and tuple are duals of each other, in category theory terms; hence, it would make sense if the implementations reflected this duality. The code at:
http://cvs.sourceforge.net/viewcvs.py/boost-sandbox/boost-sandbox/ boost/indexed_set/?hideattic=0
is an intial attempt at exploiting this duality.
Interesting, I must delay examining this until later, but for now, please note that current tuple code base will be replaced with Fusion, hopefully in 1.34. Best, Jaakko -- Jaakko Järvi, jarvi@cs.tamu.edu