Text editor implemented as a vector of strings. Each string in vector is a line of text.

vector implementation internally leverages re-init by cache'ing the string objects for removed lines of text. When new lines of text are created e.g. by emplacement, the vector can determine whether to construct a new string or re-init an existing string object based on availability of what is in the cache. 

Currently, this would be handled by std::construct_at(...) using an instance rvalue. This is fine for raw empty memory, but for existing instances in the vector purposefully made available for re-use, the "emplace using re-init feature syntax" is simpler and more concise, and incorporates recognition of this pattern into the language. What is std::xyz today may be a prototype for tomorrow's language syntax and I propose that the re-init ctor is an example.

I also maintain that unique_ptr::reset() is a perfectly valid example of usefulness of re-init concept.

Anyway, I've stated my case. And with regards to "tossing" ideas, as I mentioned, if a language designer would like me to further collaborate, I am willing and I already offer the some_object_instance::(ctor_args) syntax suggestion.

Have Great Night All,
Greg McPherran