Subject: Re: [boost] New libraries implementing C++11 features in C++03
From: Christopher Jefferson (chris_at_[hidden])
Date: 2011-11-23 16:00:53
On 23 Nov 2011, at 20:54, Nathan Ridge wrote:
> I like this idea. Here's how I envision it might work:
> - At some point, we decide to fork Boost into Boost v1 and Boost v2. This will
> probably have to wait until the major compilers have reasonably complete
> C++11 support, so we don't have to be backwards-compatible to incomplete
> C++11 implementations. Obviously small issues can be worked around, but
> the big features should be there. At the moment of the fork, all libraries are
> still C++03-compatible.
> - Library authors/maintainers who are not interested in C++11 yet can continue
> treating the v1 and v2 forks of their libraries as one, making identical changes
> to both versions.
> - Library authors/maintainers interested in C++11 can start adding C++11
> features to their v2 forks, or refactoring their v2 forks to take advantage of
> C++11 features (e.g. refactoring Boost.Fusion to use variadic templates).
> - For libraries which have started using C++11 in v2, and therefore their v1 and v2
> forks are different, all new features and bug fixes would go into the v2 fork only
> by default. If it's a bug fix, or a feature that is possible even in the C++03 v1
> implementation, and the library maintainer, or someone else, cares to do so,
> they can back-port the new feature to the v1 fork.
> - For libraries that are obsoleted by C++11, such as Boost.Move or Boost.Tuple,
> they would be kept around in v2 until all v2 forks that depend on them have
> been refactored to use the C++11 equivalents, at which point they will be
> deprecated and ultimately removed. Boost users who have upgraded to v2 have
> until this time to refactor their own code to use the C++11 equivalents as well.
> - Over time, there will be less and less interested in C++03 support, and the v1
> fork will begin to fall into disuse. Ultimately, it too will be deprecated and removed
> (this will probably be in 10 years or more, by my guess).
Several libraries poorly supported on many compilers. Stacking up more work is a bad idea, if anything boost needs to support less compiler configurations, not more!
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk