##
5 浮動小数点数リテラル

浮動小数点数リテラルは以下の字句定義で記述されます:

  floatnumber | ::= | pointfloat | exponentfloat
  pointfloat | ::= | [intpart] fraction | intpart "."
  exponentfloat | ::= | (intpart | pointfloat) exponent
  intpart | ::= | digit+
  fraction | ::= | "." digit+
  exponent | ::= | ("e" | "E") ["+" | "-"] digit+

  Download entire grammar as text.

浮動小数点数における整数部と指数部は 8 進数のように見えることも ありますが、10 を基数として解釈されるので注意してください。 例えば、"`077e010`" は正しい表記であり、"`77e10`" と同じ数を 表します。 浮動小数点数リテラルの取りうる値の範囲は実装に依存します。 浮動小数点数リテラルの例をいくつか示します:

    3.14    10.    .001    1e100    3.14e-10    0e0

数値リテラルには符号が含まれていないことに注意してください; `-1` のような句は、実際には単項演算子 (unary operator) ``-`' とリテラル `1` を組み合わせたものです。