This is an old question! I wonder if anyone is reading this. But still it is intriguing. In your comments, you say you are looking for:
Faster asymptotics or constant factors or less memory usage
Well, ropes have an O (1) insert and an O (n) iteration. You cannot do better. Substrings and indexing will obviously be more expensive. But most use cases for large documents do not require editing or random access. If you only concatenate at the end, a 1D vector / row list can improve the insertion time constant. I used this in JavaScript because it had such a slow string concatenation.
, , .
, : , . , HTML-, DIV, SPAN LINK. , , , . , . .
elemenst , ( , ), . , : , . , . - , CSS, HTML-, .
user180326