Having recently done a lot of work using C++ previously coming from Go and Typescript I find it hard to understand all the reasons for the language to be so flexible.
Having recently done a lot of work using C++ previously coming from Go and Typescript I find it hard to understand all the reasons for the language to be so flexible.
There is a formal distinction between hosted and freestanding, but that’s not the same as library/language. Cf https://en.cppreference.com/w/cpp/freestanding
I really don’t care for pedantry, but when people start correcting others then had better be right.
[intro.structure]
Clause 5 through Clause 15 describe the C++ programming language.
That description includes detailed syntactic specifications in a form described in 4.3.
For convenience, Annex A repeats all such syntactic specifications.
Clause 17 through Clause 32 and Annex D (the library clauses) describe the C++ standard library.
That description includes detailed descriptions of the entities and macros that constitute the library, in a form described in Clause 16.
it's pretty obvious from that than the library is seen as separate from the language - and yes, std:: could be entirely built-ins but as always that'd be under the as-if rule of optimization.Else what would be the meaning of core language defects ? http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html
The original point of this thread was about where std::format exists and from a implementation point of view it doesn’t really matter.
STL containers and algorithms are the true gems from c++, paired with the speed and memory efficiency and smart-pointers, c++ is just getting stronger these days.
C++ is driven on all directions by a large number of very diverse stakeholders.