El 24/05/2020 a las 14:52, Edward Diener via Boost escribió:
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ó:
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.
I'm not sure I'm parsing your sentences right, but does that mean you're ok with a library using cxx_dual from scracth but not ok if a Boost-reliant lib is later updated via cxx_dual *only* to reduce Boost dependencies in C++11?
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 [...]
I understand you meant "should library X be arbitrarily updated" here.
[...]for no good practical reason to use C++ features of Epoch level nnn ?
The reason is to reduce internal Boost dependencies.
I am pretty sure you can see the absurdity of such a determination as that.
I admire your confidence but not your perspicacity, as I indeed see no absurdity here. Take for instance Boost.Beast, which depends on boost::string_view but can be made to depend on std::string_view instead via BOOST_BEAST_USE_STD_STRING_VIEW. Shall I take that you deem this ability absurd? Joaquín M López Muñoz