The ECL implementation of strings is ANSI Common-Lisp compliant. There are basically four string types as shown in Table 9.1. If Unicode support is disabled, character and base-character are the same type and the last two string types are equivalent to the first two.
Table 9.1. Common Lisp string types
Abbreviation | Expanded type | Remarks |
---|---|---|
string | (array character (*)) | 8 or 32 bits per character, adjustable. |
simple-string | (simple-array character (*)) | 8 or 32 bits per character, not adjustable nor displaced. |
base-string | (array base-char (*)) | 8 bits per character, adjustable. |
simple-base-string | (simple-array base-char (*)) | 8 bits per character, not adjustable nor displaced. |
Currently, strings with unicode characters cannot be printed readably.