Subject: Re: [boost] List of C++ 11 only Boost libraries and their status?
From: Gottlob Frege (gottlobfrege_at_[hidden])
Date: 2014-11-27 16:26:20
On Wed, Nov 26, 2014 at 10:51 AM, Robert Ramey <ramey_at_[hidden]> wrote:
> I have to say I don't get the point of such a review.
> Boost has never had a requirement that a library support anything other than
> the latest available C++ standard.
Yet, there's lots of "muck" in many boost headers to support ancient
compilers, and (I assume) there exists users that are grateful for
that muck, as it means they can use boost in their codebases that are,
for whatever reason, stuck using older compilers.
For example, some people use boost::shared_ptr because they don't have
std::shared_ptr. Much of boost is in C++11, so much of boost has
successfully obsoleted itself!, other than for users stuck in the
past. A portion of boost is used precisely because it is NOT C++11.
The real question is what percentage of the boost community has
upgraded their compilers to C++11 or greater. And what might this say
for C++11 adoption in general. And what does that say about boost
moving forward - which users are we trying to help?
And, the reverse question (which Niall is asking), how much of Boost
has moved to C++11 or greater, even if a large(?) percentage of the
And if so, what does that say about Boost and/or C++ adoption. ie is
Boost pushing the adoption of C++11? Would boost push C++11 better if
its libraries were backwards compatible (so as to "ease" people into
C++11) or should a library abandon old C++ and "force" users to move
If I was to write a new library, that _could_ be old-C++ compatible,
but with extra work, should I put in that extra work?
I think there are interesting questions here for Boost and C++. Not
sure if Niall is heading towards those questions or others.
--- The further question, which I think should be discussed here or at BoostCon/C++Now, is what is Boost's role *today*? Is boost still a stepping stone to the standard? (I find that with the standard's new pace, and with its push to use TS's, "stepping stone" is now a more minor role for boost. For better or worse - ie I'm not sure if it is good for the standard.) Or is boost now a place for good libraries, most of which aren't general enough to be in std, but are really good and really useful when you need them? Or is boost a maintenance effort for old libraries for older compilers. (I don't think Boost is just that, but is it part of its role?) Tony