@Override
  public Appendable append(CharSequence csq, int start, int end) {
    reserve(end-start);
    for (int i=start; i<end; i++) {
      unsafeWrite(csq.charAt(i));
    }
    return this;
  }
A StringBuilder that allows one to access the array.
linguistics/src/main/java/com/yahoo/language/simple/kstem/OpenStringBuilder.java