Bartosz Milewski wrote:
Ali Cehreli Wrote:

Neither 'a' nor 'b' own the elements; in that sense, if one is a
slice then the other is a slice... In D, slices have "discretionary
sharing semantics." Any slice may leave the sharing contract as it
sees unfit.

So is your answer different from that of dsimcha? I'm sitting on a
fence about it. Andrei, could you settle this issue (and a few others
I raised before)?

I'm not sure I figure what the issue is, and I'd appreciate a rehash of the few other issues brought up. (I thought they had been responded to.) David's reply is valid but may be a bit misleading because it explains things in terms of the cache, which could reinforce the impression that the cache is part of the definition.

Ali's point is also correct in the sense that arrays are not owned. Garbage collection makes that possible.

It's very simple, really. Appending to an array never results in overwriting elements of an existing array. Appending may terminate a sharing relationship. This is simple, easy to understand, and requires no understanding of the optimization paraphernalia, which I hope to be able to improve.


Andrei

Reply via email to