Subject: Re: [boost] Proposal: Boost.Core
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2014-05-31 12:30:53
On Saturday 31 May 2014 17:21:42 Peter Dimov wrote:
> I propose the creation of a new module, Boost.Core, a repository of Boost
> core utilities.
> The criteria for inclusion into this module would be that the utility
> component is (a) simple, (b) used by other Boost libraries, (c) does not
> depend on any headers outside of Core and Config (and perhaps Assert).
> Its primary purpose would be to break dependencies. It will not serve as a
> repository of "this might be useful".
> Based on the interest so far, I volunteer myself, Glen Fernandes and Andrey
> Semashev as maintainers.
> The following utilities are immediate candidates for migration into the new
> - addressof
> - enable_if
> - boost/pointee.hpp
> - boost/indirect_reference.hpp
> - boost/type.hpp
> In addition, the following can be duplicated inside to reduce dependencies:
> - mpl::if_, if_c, eval_if
> - detail/is_incrementable.hpp
> - remove_cv
> and so on.
I like the general idea but I'm worried about needing to duplicate things. The
list is short now, but I'm sure it will get bigger. Maybe that's a sign that
something that needs these components do not fit into Boost.Core.
OTOH, MPL and TypeTraits stuff you mentioned is commonly used, so I suspect if
we limit ourselves to avoid them then Boost.Core will be almost empty. Maybe
we should decompose MPL and TypeTraits first and then use the smaller bits in