|
Boost : |
From: Andrei Alexandrescu (andrewalex_at_[hidden])
Date: 2001-11-19 15:13:50
I was hoping yesterday to finalize changing the typelists code to submit it
to boost for review. I ran into a couple of problems and I said I would ask
you about that:
* What namespace should I put typelists in? The initial placement was: the
Typelist class was in namespace Loki, and the afferent manipulation
functions were in Loki::TL. I was thinking of putting typelist in boost, and
the rest in boost:tl. Would that be ok?
* This brings the point of identity. At a point I plan to have boost (the
Borg :o)) swallow all of Loki, but then there would be no Loki anymore. Any
idea on how to address this identity crisis?
* Typelists use a type, NullType, which is in a header of its own, and
serves as a terminator. Other parts of Loki use it. Is there another type
somewhere in a general boost facility that can do that? If not, does
null_type deserve a place in the boost namespace?
* For the DerivedToFront algorithm, Loki uses SUPERSUBCLASS, which in turn
uses the Conversion class. I "ported" Conversion to boost's format, but then
I remembered that a similar facility already exists in Boost. But there is
no SUPERSUBCLASS in Boost, so by this I'd like to make a motion for
introducing that macro in conversion_traits.hpp because I consider
SUPERSUBCLASS an important abstraction. Also, I think the approach of using
a static dummy function instead of "static From _m_from;" in
conversion_traits.hpp is more portable. (With today's standard, whether we
like it or not, any "use" of a class static variable asks for it to be
defined. The term "use" is not defined, which is a pity.)
* I understand that Aleksey Gurtovoy is working on a similar facility. I
looked over his code and I didn't understand it, but then I didn't have much
time. Could anyone point me to some doc? If it offers the same functionality
as typelist, I guess it would be best to merge the submissions.
* How about test code? What is the canonical way of adding test suites to
parts of boost?
I'd be glad if you could clarify all these for me. I now have the mailing
list forward me every message, so I guess I'll nag you guys quite often :o).
To answer an earlier question I saw around here, smart pointers will be the
next I plan to make after typelists.
Cheers,
Andrei
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk