Specializing Ropes for Ruby [pdf]
chrisseaton.com
chrisseaton.com
*: to be pedantic, Carakan never did use ropes, just lazily concatenating strings for some operations.
(And now I wait for someone who worked on this to tell me why they didn't do it sooner. :))
For historical context, a string rep besides ASCIIZ / charZ (NUL-terminated) was dollar-terminated used by DOS.
Pascal would store a byte length at the head of a string to indicate it's length.