Boost logo

Boost :

Subject: Re: [boost] The Lonely Song of the MPL Maintainer -- or Boost support for antediluvian compiler and the future supprot of C++11
From: Edward Diener (eldiener_at_[hidden])
Date: 2011-08-21 19:48:31


On 8/21/2011 5:36 PM, Ion Gaztañaga wrote:
> El 21/08/2011 20:54, Jeff Garland escribió:
>> On Sat, Aug 13, 2011 at 9:18 AM, Joel falcou<joel.falcou_at_[hidden]>
>> wrote:
>>
>>> <radical>
>>> Going further, shouldn't we start thinking at boost 2.0 which will
>>> definitevely let c++03 die its peaceful death and start, on a voluntary
>>> effort, move boost component toward C++11. I know we have a fully
>>> working
>>> Fusion for 0x only. mpl, proto and other strategic infrastructure
>>> libraries
>>> should benefit from that. Some are a trivial port like Boost.PP and
>>> all the
>>> TR1 boost library that will just either disappear or forward the C++11
>>> version.
>>> </radical>
>>>
>>>
>> For what it's worth, I'm currently looking at creating date-time v2 in
>> preparation for an updated lwg proposal. It expect it will be "mostly"
>> compatible with date-time v1, but with some new twists and adjustments --
>> enough that I want to rewrite the core code. To save time and energy I'm
>> seriously considering requiring C++11 so that I have access to several
>> new
>> features. In my case I have to also contend with Chrono compatibility
>> -- so
>
> IMHO that would be bad news. Until most programmers migrate to a new
> compiler with C++11 features we'll have to wait for years, enterprise
> policies are not compatible with changing the already bought licences
> and environments every yar. Some basic support for C++03 would be nice,
> we have move emulation and some macro tricks for variadic templates.
> Just my 2 cents,

Although it is more work for the Boost library developer I see nothing
wrong with creating a version of a library for C++11, while still
supporting C++03 in a previous version as long as the C++03 version
remains supported as far as fixing bugs and potentially adding new
features are concerned. For older Boost libraries which have supported
compilers which are completely out of date as far as the C++03 standard
is concerned, I also see nothing wrong with creating a separate version
which leaves behind endless workarounds produced to support out-of-date
compilers and restricting any further work to that version.

I think while it is harder to support multiple versions of a library, it
is relatively easy via separate directory trees to setup a library for
the end-user which supports these different versions. At some point a
library developer is justified in dropping support entirely for
compilers which nobody should really be using anymore ( ie. VC6, VC7 ).
Inevitably as C++11 and even further changes in the C++ standard occur,
Boost library developers have a right to tailor their libraries to the
latest technology and tell people that they need to use a better
compiler, but I agree with you that C++03 support is going to be
necessary for a good while yet until major compiler vendors support the
C++11 standard as it gets published and promoted.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk