When a token is read, it is interpreted as a number or symbol. The token is interpreted as a number if it satisfies the syntax for numbers specified in Figure 2–9.
numeric-token ::= !integer | !ratio | !float integer ::=[sign]{decimal-digit}^+ decimal-point |[sign]{digit}^+ ratio ::=[sign]{digit}^+ slash {digit}^+ float ::=[sign]{decimal-digit}* decimal-point {decimal-digit}^+[!exponent]|[sign]{decimal-digit}^+[decimal-point {decimal-digit}*]!exponent exponent ::= exponent-marker[sign]{digit}^+ sign—a sign. slash—a slash decimal-point—a dot. exponent-marker—an exponent marker. decimal-digit—a digit in radix10. digit—a digit in the current input radix.
Figure 2–9: Syntax for Numeric Tokens