String ADTs
Assumed application requirements:
- The values are to be strings of any length.
- It must be possible to determine the length of a string.
- It must be possible to obtain the character at a given index.
- It must be possible to obtain the substring at a given range of indices.
- It must be possible to compare strings lexicographically.
- It must be possible to concatenate strings.