Sorry, I meant specifically:<p><i>A good one can detect that only a range of allocation is alive and release unused part of someLargeString.</i><p>I do agree that ropes are nice, though they may not be acceptable if you want O(1) indexing or slicing.