Boost logo

Boost :

From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2023-11-26 02:16:46


On 11/26/23 04:55, Vinnie Falco via Boost wrote:
> On Fri, Nov 24, 2023 at 12:58 PM Дмитрий Архипов via Boost
> <boost_at_[hidden]> wrote:
>> Boost.Scope is a small library implementing utilities defined in
>> <experimental/scope> from C++ Extensions for Library Fundamentals v3
>> with a few extensions.
>
> So... "with a few extensions." I would like to have a discussion about
> this. Over the years I have seen little problems pop up with libraries
> that mirror C++ standard library components where we can't deprecate
> the library or suggest that users switch to the std alternative,
> because Boost has "added a few extensions." I can't recall any
> particular examples but I know they exist.
>
> Since this Boost.Scope is not yet published, do we really want to be
> adding extensions to std components? A common complaint is that Boost
> duplicates functionality that exists in the standard. If we offer
> extensions this only furthers the rift and creates friction for
> switching back and forth.
>
> What do you all think?

I think there's little point in introducing new libraries that are
predetermined to be locked down to be strictly equivalent to the
standard C++ components. We already have Boost.Compat for that. New
libraries should allow for innovation and must not be limited by the
current standard.

The fact that some Boost libraries that now have standard counterparts
have certain extensions is a good thing because it offers users a choice
and provides them the functionality they need. The fact that the
standard doesn't provide that functionality (provided that it is needed
by users) is a deficiency of the standard, not the Boost library.

Specifically regarding Boost.Scope, the extensions I made are what makes
these components practically useful in my real code base. That is, I
find the standard components too limiting or inconvenient to be useful
in practice.


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