Search code examples
c++booststl

Boost Libraries that made it into the C++ standard


I searched quite a while to find which boost libraries made it into the std library, but I only find a whole list of new libraries (like here: http://open-std.org/jtc1/sc22/wg21/docs/library_technical_report.html or here: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1810.html). Can anyone tell me which Libraries in the std are originally from boost?


Solution

  • There is no official list for this. You can find out about Boost incluence by reading the document that proposed the feature. Typically, it would say something like "This proposal is based on the Boost.XYZ library". Not necessarily in those words.

    At least the following proposals were based, or heavily influenced on their respective boost library. Some of them were influenced by other implementations besides Boost. In some cases, it might equally appropriate to say that the boost library was influenced by the standard proposal. This is not necessarily a complete list:

    <filesystem>
    <shared_ptr>
    <tuple>
    <regex>
    <thread>
    <variant>
    <optional>
    <any>
    

    Following proposals not (yet) accepted are similarly influenced. This list is probably even less complete:

    <dl>
    <process>
    <stacktrace>
    <networking> (C++20 should have a TS)
    <static_vector><fixed_capacity_vector>
    <expected><unexpected>
    <safe>
    <date_time>
    

    In most cases, there are some differences between the boost library, because of lessons that were learned but could not be fixed in Boost due to backward compatibility, or because of desire to limit the scope of the proposal.