Boost logo

Boost :

Subject: Re: [boost] Curiousity question
From: Edward Diener (eldiener_at_[hidden])
Date: 2016-10-13 12:38:35


On 10/13/2016 11:49 AM, Chris Glover wrote:
> On Thu, 13 Oct 2016 at 10:32 Peter Dimov <lists_at_[hidden]> wrote:
>
>> Edward Diener wrote:
>>
>> The basic issue with a Boost library that allows one to switch between
>> Boost
>> and standard components is this: the usual motivation for using a standard
>> component when available is to avoid a dependency on Boost. But if you
>> don't
>> have Boost, you also don't have the Boost library that would allow you to
>> switch.
>>
>>

You quoted me for the above but it should be Peter Dimov. I did author
the OP.

> There are two other motivations I've run into in the wild.
>
> a. To depend on less of boost for compile time reasons. The standard
> library equivalents on a given platform typically compile faster than the
> boost equivalents because they have less machinery thanks to only having to
> worry about a single platform. I say typically because it's not this simple
> since boost headers can be included in a more piecemeal fashion which can
> be used to optimize, but in practice, it holds.
>
> b. Some platforms don't have a boost implementation of things like threads,
> so its useful to be able to use the vendor supplied std versions in those
> cases.

As an adjunct to your second point some compilers don't even support C++
standard versions of Boost equivalent libraries even when compiling in
C++11 mode.

When I created cxx_dual it was not so much because I thought that a
Boost distribution was an unwanted burden for programmers or programming
groups to have on their hard disks, but more because I thought that
programmers would not want to use a Boost library if its C++ standard
equivalent library was available to be used.


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