|
Boost : |
From: Oliver Kowalke (oliver.kowalke_at_[hidden])
Date: 2022-12-08 17:05:13
Coroutine (superseded by Coroutine 2) - unfortunately boost.asio depends
on boost.coroutine
I asked last year to cut this dependency by introducing the new lib
boost.spawn (depends only on boost.context) and to remove
boost::asio::spawn().
Am 06.12.22 um 09:48 schrieb Rainer Deyke via Boost:
> On 06.12.22 01:21, Vinnie Falco via Boost wrote:
>> 2. A streamlining of Boost. We need ideas on how to address the issues
>> raised by users. Just thinking out loud this could include breaking
>> Boost up into several smaller libraries, e.g. "core" boost, "math"
>> boost, "network" boost, "C++03 boost". Work on documentation that most
>> people agree is poor or is a pain point for users. There has been a
>> lot of discussion about this so I won't repeat it here.
>
> I think a good first step would be to separate out "legacy" libraries
> - libraries that exist and will continue to be maintained for users of
> the library, but which are no longer recommended for new code
> targeting the latest C++ standard.
>
> At a first glance, the following libraries would have to justify their
> continued existence as "core" Boost libraries:
>
> Â Any (superseded by std::any)
> Â Array (superseded by std::array)
> Â Assign (superseded by std::initializer_list)
> Â Atomic (C++11 feature emulation library)
> Â Bind (superseded by lambda expressions)
> Â Chrono (superseded by std::chrono)
> Â Compatibility (only exists to support obsolete compilers)
> Â Concept Check (superseded by C++20 concepts)
> Â Coroutine (superseded by Coroutine 2)
> Â Coroutine 2 (superseded by C++20 coroutines)
> Â Enable If (superseded by std::enable_if)
> Â Filesystem (superseded by std::filesystem)
> Â Foreach (superseded by range-based for)
> Â Function (superseded by std::function)
> Â Function Types (superseded by Callable Traits)
> Â Iterator (superseded by Stl_interfaces)
> Â Lambda (superseded by lambda expressions and Lambda2)
> Â Move (superseded by std::move)
> Â MPL (superseded by Mp11)
> Â Optional (superseded by std::optional)
> Â Phoenix (superseded by lambda expressions)
> Â Range (superseded by std::ranges)
> Â Ratio (superseded by std::ratio)
> Â Result Of (superseded by decltype)
> Â Smart Ptr (largely superseded by std::shared_ptr and std::unique_ptr)
> Â Spirit Classic (superseded by Spirit)
> Â Static Assert (superseded by static_assert)
> Â String Ref (superseded by std::string_view)
> Â Thread (superseded by std::thread)
> Â Tuple (superseded by std::tuple)
> Â Type Traits (superseded by <type_traits>)
> Â Typeof (superseded by decltype)
> Â Variant (superseded by Variant2 and std::variant)
>
> If they offer significant advantages over their standard counterparts,
> let them state those advantages front and center in their
> documentation. Â If they don't, let them by removed from the main
> libraries page onto a separate "legacy libraries" page.
>
>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk