On Fri, Jan 30, 2009 at 2:07 PM, Bill Ward <b...@wards.net> wrote: > On Fri, Jan 30, 2009 at 2:04 PM, David Nicol <davidni...@gmail.com> wrote: >> On Fri, Jan 30, 2009 at 2:46 PM, Paul LeoNerd Evans >> <leon...@leonerd.org.uk> wrote: >>> On Fri, Jan 30, 2009 at 02:00:13PM -0600, David Nicol wrote: >>>> there is also intersection with the concept of "ropes" rather than >>>> "strings" as I understand the term, >>> >>> A rope is a data structure designed to make string concat an O(1) >>> operation, where you store a tree, or a linked list of substrings. >>> >>> That isn't the case here - in fact, the string data itself is just >>> stored in here as a single perl string. The tags are stored in as a list >>> of [start, length, name, value] objects beside it. >> >> The other advantage is that the substrings can have attributes. > > That would be a good way to define this but it still doesn't lend > itself well to a name. String::SubStrAttr ?
Or String::Substrate? The meaning of "substrate" doesn't really fit here but it's so close to SubStrAttr that I bet you could get away with it, with a suitable comment explaining the name :)