the type of strings that type t is a substring of
create ?pos ?len base creates a substring of the base sequence of
length len starting at position pos, i.e.
base.[pos], base.[pos + 1], ... base.[pos + len - 1]
It is required that:
0 <= pos0 <= lenpos + len <= length baseIt does not copy the characters.
for copying characters from a substring to and from both strings and substrings.
The result of these functions may share data with their input.