[Development] Views in APIs
Marc Mutz
marc.mutz at kdab.com
Thu May 14 11:46:29 CEST 2020
On 2020-05-13 17:27, Matthew Woehlke wrote:
> On 12/05/2020 12.59, Marc Mutz via Development wrote:
>> AsidE: If you think that CoW is still a thing today: no. SSO is a
>> thing these days, and it seems that QString will not have it in Qt 6,
>> either. NOI favours SSO, QString-everywhere cements the naïve CoW
>> world of the 1990s for yet another decade.
>
> I am really, *really* sick of this.
>
> Okay, for "most" *strings*, you may have a point.
I thought this thread was about strings. Did I miss something?
> However, CoW is
> *absolutely* still a useful tool for a lot of other applications, and
> will continue to be so;
*Optional* *explicit* sharing, as per shared_ptr<const Data> is a thing,
yes. But that's completely different from the broken Qt "implicit
sharing" that we have now. Have you read the 22year-old Sutter articles?
After having read the second, have you checked Qt's implementation for
the pitfalls mentioned therein? Continue discussing after you did.
> the combination of implicit value semantics
> and "cheap" copies (an atomic increment may be relatively expensive,
> but so are memory allocations, especially for large data structures)
> is not going away any time soon.
>
> Please stop with this crusade of yours to end all CoW, get rid of
> QList, etc. It is misguided and harmful to the ecosystem at large.
You are entitled to your opinions just as I am. The difference is that I
put time (much more than KDAB pays me for, esp. when it comes to my
"crusade") where my mouth is.
Thanks,
Marc
More information about the Development
mailing list