On 10/07/2024 15:34, Jonathan Wakely wrote:
> On 08/07/2024 17:46, Jonathan Wakely wrote:
> > "There is great reticence to add new standard library classes"
> >
> > Is there? I'm not sure I want to live in a world where we add a lot
> > /more/ classes to the standard, if what we have now is the result of
> > great reticence!
>
> It is my understanding that proposals have been rejected on the
> basis of
> ABI stability. If that impression is wrong, please let me know and I'll
> remove that sentence.
>
>
> Proposals to *change* existing classes have been rejected for reasons
> related to ABI stability. Your proposal says there is a reticence to add
> new classes to the library, which is not the same as changing existing
> classes, and I am unaware of any proposals to add *new* classes that
> have been rejected.
Fair enough. I seem to remember reading about this happening on /r/cpp,
but I didn't save the link and can't find it anymore. I have toned down
the sentence to "there may be reluctance to add new standard library
classes ...". If you think this is still too strong, I'll remove the
sentence entirely.
I think "reluctance to evolve existing classes in incompatible ways" would be accurate. It's talking about adding new classes that I'm objecting to. That doesn't seem to match reality, as we keep adding more and more new things. Sometimes that happens precisely because of ABI reasons, like the jthread example. There was reluctance to change std::thread, so instead a new class was added. That doesn't seem consistent with "reluctance to add new standard library classes". If anything, we add too much, and ABI concerns increase that rather than decreasing it.
Hans Guijt