String descriptors and null-terminated strings are two competing approaches to string design. Each has strong and weak points. However, as a user of both I would hate to see the user forced to use descriptor-based strings in C. Terminated-arrays are much easier to deal with in C code in the majority of cases.