Subject: Re: [boost] [modularization] Modularizing Boost (modularization)
From: Stephen Kelly (steveire_at_[hidden])
Date: 2013-10-18 09:16:28
On 10/18/2013 02:19 PM, Beman Dawes wrote:
> On Thu, Oct 17, 2013 at 6:24 PM, Stephen Kelly <steveire_at_[hidden]> wrote:
>> Hi there,
>> my plan for modularizing and modernizing Boost was roughly this:
>> * Phase 0 - remove dead weight by bumping compiler feature requirements
>> * Phase 1 - move some files around so that the modularized repos form a
>> mostly directed graph
>> * Phase 2 - Form some kind of 'boost core library' or 'boost feature
>> normalization library' from the guts of existing libraries like
>> type_traits, static_assert, config mpl and utilities.
>> * Phase 3 - Try to port the mpl to variadic templates so that the
>> dependency on Boost.PP is not needed when variadic templates are available.
> Herb Sutter has pointed out that approximately 15 months from now all
> widely used compilers and their libraries will be C++11/14 compliant,
> modulo residual bugs.
Widely used is irrelevant on this list. See the responses to threads
> At that point C++11/14 boost (2.x?) becomes a viable
I'm looking forward to seeing you try to get buy-in for that :).
> C++11/14 boost would have a markedly different dependency graph, since
> libraries would only use the boost versions of other libraries if they
> needed some extension not present in the standard library version.
That's part of my thinking too. Eg, mpl would not depend on Boost.PP if
used by a C++11 compiler if my phase 3 is completed. That is the kind of
thing we can encode into the cmake package files.
> It might be helpful to start figuring out how we can do the transition to a
> C++11 (and then 14) world.
I agree. I think that's phase 3+ though, and I recommend doing the other
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk