Common Lisp the Language, 2nd Edition

Next: Symbols Up: Characters Previous: Character Attributes

## 2.2.5. String Characters

Any character whose bits and font attributes are zero may be contained in strings. All such characters together constitute a subtype of the characters; this subtype is called `string-char`.

X3J13 voted in March 1989 (CHARACTER-PROPOSAL) to eliminate the type `string-char`. Two new subtypes of `character` are `base-character`, defined to be equivalent to the result of the function call

    (upgraded-array-element-type 'standard-char)

and `extended-character`, defined to be equivalent to the type specifier

    (and character (not base-character))

An implementation may support additional subtypes of `character` that may or may not be supertypes of `base-character`. In addition, an implementation may define `base-character` to be equivalent to `character`. The choice of any base characters that are not standard characters is implementation-defined. Only base characters can be elements of a base string. No upper bound is specified for the number of distinct characters of type `base-character`-that is implementation-dependent-but the lower bound is 96, the number of standard Common Lisp characters.