@end deffn
@deffn procedure unicode-char? object
-Returns @code{#t} if @var{object} is any ``bitless'' character
-corresponding to a Unicode code point, except for those with general
-category @code{other:surrogate} or @code{other:not-assigned}.
+Returns @code{#t} if @var{object} is any character corresponding to a
+Unicode code point, except for those with general category
+@code{other:surrogate} or @code{other:not-assigned}.
@end deffn
@deffn procedure char-general-category char
MIT/GNU Scheme's character-set abstraction is used to represent groups
of characters, such as the letters or digits. A character set may
-contain any ``bitless'' character. Alternatively, a character set can
-be treated as a set of code points.
+contain any character. Alternatively, a character set can be treated
+as a set of code points.
+
+Implementation note: MIT/GNU Scheme allows any ``bitless'' character
+to be stored in a character set; operations that accept characters
+automatically strip their bucky bits.
@deffn procedure char-set? object
@cindex type predicate, for character set
An @var{element} can take several forms, each of which specifies one
or more characters to include in the resulting character set: a
-(bitless) character includes itself; a string includes all of the characters it
+character includes itself; a string includes all of the characters it
contains; a character set includes its members; or a code-point range
includes the corresponding characters.
Implementation note: MIT/GNU Scheme allows any ``bitless'' character
to be stored in a string. In effect this means any character with a
-Unicode code point, including surrogates.
+Unicode code point, including surrogates. String operations that
+accept characters automatically strip their bucky bits.
It is an error to pass such a forbidden character to
@code{make-string}, @code{string}, @code{string-set!}, or