Boost logo

Boost :

Subject: Re: [boost] transforming ex. boost lib into C++11-only lib?
From: Robert Ramey (ramey_at_[hidden])
Date: 2015-01-22 13:05:26

Niall Douglas wrote
> On 22 Jan 2015 at 15:20, Oliver Kowalke wrote:
>> Hello,
>> is it permitted to transform an existing boost library into a C++11-only
>> library?
> If you meant here "transform an existing boost library into a
> C++11-only *Boost* library with C++ 11 only APIs" then I think you
> need to cycle the library name. Precedent here is that Signals went
> to Signals2, here I should think Coroutine ought to become
> Coroutine2.


> If you meant here "transform an existing boost library into a C++11
> STL _capable_ *standalone* library" i.e. you do as Chris did in ASIO
> and I've done in AFIO via BindLib and provide a macro based framework
> for swapping out Boost STL for C++ 11 STL, then no I don't think the
> name needs to change as ASIO already did this some time ago, and I
> doubt anyone in Boost even noticed. The precedent here says this is
> okay so long as 03 Boost STL support still works.


> If finally you really meant here "I'd like a totally different
> internal implementation of Coroutine when C++ 11 mode is switched on,
> but still provide a legacy if orphaned but mostly API compatible C++
> 03 implementation" then I'd personally say no name change needed.
> Precedent here is probably Boost.Thread where an increasing chunk of
> it uses different implementations depending on the C++ standard being
> used.

disagree here. I hate when some programmer tries to "outsmart" me by doing
what he "knows" I need and does what he thinks I should want rather than
I say I want. It's very confusing to the user and a lot more work for the
This was done for spirit - they did a good job and it works, but its very
to me if I have to look into some sort of problem. Boost Build has the same
in that if it fails, I just can't figure out what I have to change to make
it work. It's
too smart for my own good. google bjam coke machine.

So in this case, I would prefer the creation of Library2 as in the first
case above.
Certainly this worked well with signals and other libraries should follow
that model.

Robert Ramey

View this message in context:
Sent from the Boost - Dev mailing list archive at

Boost list run by bdawes at, gregod at, cpdaniel at, john at