Boost logo

Boost :

From: Edward Diener (eldiener_at_[hidden])
Date: 2020-05-24 12:52:31

On 5/24/2020 4:20 AM, Joaquin M López Muñoz via Boost wrote:
> El 23/05/2020 a las 22:46, Edward Diener via Boost escribió:
>> On 5/23/2020 5:56 AM, Joaquin M López Muñoz via Boost wrote:
>>> Hi,
>>> Prompted by general feelings about Boost perceived lack of
>>> modernization and internal "bloat",
>>> and after an explicit survey on what users dislike about Boost [1], I
>>> decided to try and write a more
>>> or less fleshed out proposal for an epoch-based organization of Boost
>>> libraries. I've extensively
>>> tested and refined the proposal during discussions on Reddit and the
>>> Boost Slack channel,
>>> and I feel this is now ready for presentation at the mailing list:
>>> I hope the proposal can start a productive conversation. Looking
>>> forward to your feedback.
>> I wrote cxx_dual [...]
>> I do believe people overreact to dependencies, however. All good
>> software design involves
>> reusing established code when necessary. Reinventing code simply for
>> the sake of less
>> dependencies has always seemed to me a fool's game, unless there is a
>> very good practical
>> reason for not using established code.
> In this particular case, there are two establshed codes: Boost and std.
> Seems like some end
> users strongly favor the latter as it's not perceived as a real
> dependency in the sense that
> additional libs need be downloaded etc.
>> I am totally against the idea that some code which works perfectly in
>> C++03, as well as all
>> other C++ standard levels, needs to be unnecessarily updated to some
>> later C++ standard
>> level in order to be acceptable to anyone.
> This looks somewhat at odds with one of the stated goals of your
> cxx_dual lib:
> "On a more practical basis the CXXD library is for:
> 1. Programmers writing code not using C++11 syntax who still want to
>    target some
>    C++11 libraries if the code is compiled in C++11 mode.
>    [...]"

I do not see why you think the statement above is at odds with what I
previously asserted. Whatever might have been added to a Boost library
which became a C++ standard library in C+11 or beyond could hardly have
been done just to add unnecessary features. I am not against a library
being updated to use features of a later C++ standard when those updates
are predicated on improving a library in specific ways that make it
worthwhile to add such features.

The gist of your proposal which seems to me to be highly flawed is the
idea that at a certain Epoch level all dependencies of a library must
also exist at that same Epoch level or higher. How realistic is such a
goal ? If library X at Epoch level nnn successfully uses library Y at
Epoch level nnn-1, why should library Y be arbitrarily updated for no
good practical reason to use C++ features of Epoch level nnn ? I am
pretty sure you can see the absurdity of such a determination as that.

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