Ok, you're willing to pay the "penalty". I am not. > Fully sliceable strings and arrays are always better.
The terminating zero doesn't preclude slicing (you can have a flag that indicates whether the terminator exists) but slicing has inherent ownership problems that the more convoluted `(string, startIndex)` solution lacks. They are certainly not "always better".
