Next: Invalid Characters, Previous: Constituent Characters, Up: Character Syntax Types
Every character has one or more constituent traits that define how the character is to be interpreted by the Lisp reader when the character is a constituent character. These constituent traits are alphabetic_2, digit, package marker, plus sign, minus sign, dot, decimal point, ratio marker, exponent marker, and invalid. Figure~2–8 shows the constituent traits of the standard characters and of certain semi-standard characters; no mechanism is provided for changing the constituent trait of a character. Any character with the alphadigit constituent trait in that figure is a digit if the current input base is greater than that character’s digit value, otherwise the character is alphabetic_2. Any character quoted by a single escape is treated as an alphabetic_2 constituent, regardless of its normal syntax.
constituent traits constituent traits
character character
________________________________________________________________________________
Backspace invalid { alphabetic_2
Tab invalid* } alphabetic_2
Newline invalid* + alphabetic_2, plus sign
Linefeed invalid* - alphabetic_2, minus sign
Page invalid* . alphabetic_2, dot, decimal point
Return invalid* / alphabetic_2, ratio marker
Space invalid* A, a alphadigit
! alphabetic_2 B, b alphadigit
" alphabetic_2* C, c alphadigit
# alphabetic_2* D, d alphadigit, double-float exponent marker
$ alphabetic_2 E, e alphadigit, float exponent marker
% alphabetic_2 F, f alphadigit, single-float exponent marker
& alphabetic_2 G, g alphadigit
’ alphabetic_2* H, h alphadigit
( alphabetic_2* I, i alphadigit
) alphabetic_2* J, j alphadigit
* alphabetic_2 K, k alphadigit
, alphabetic_2* L, l alphadigit, long-float exponent marker
0-9 alphadigit M, m alphadigit
: package marker N, n alphadigit
; alphabetic_2* O, o alphadigit
< alphabetic_2 P, p alphadigit
= alphabetic_2 Q, q alphadigit
> alphabetic_2 R, r alphadigit
? alphabetic_2 S, s alphadigit, short-float exponent marker
@ alphabetic_2 T, t alphadigit
[ alphabetic_2 U, u alphadigit
\ alphabetic_2* V, v alphadigit
] alphabetic_2 W, w alphadigit
^ alphabetic_2 X, x alphadigit
_ alphabetic_2 Y, y alphadigit
‘ alphabetic_2* Z, z alphadigit
| alphabetic_2* Rubout invalid
~ alphabetic_2
Figure 2–8: Constituent Traits of Standard Characters and Semi-Standard Characters
The interpretations in this table apply only to characters whose syntax type is constituent. Entries marked with an asterisk (*) are normally shadowed_2 because the indicated characters are of syntax type whitespace_2, macro character, single escape, or multiple escape; these constituent traits apply to them only if their syntax types are changed to constituent.
Next: Invalid Characters, Previous: Constituent Characters, Up: Character Syntax Types