数値リテラル

XtalRubyに倣い、2進数表記を持ち、アンダーバーで数字を区切ることが出来ます。

  0b1111_1111.p; //=> 255
  0B_1_0000_0000.p; //=> 256


また、数値リテラルサフィックスとして、F、K、G、M、を付けることが出来ます。

  • Fは浮動小数点数を表します。
  • Kは1024を掛けた数字を表します。
  • Mは1024*1024を掛けた数字を表します。
  • Gは1024*1024*1024を掛けた数字を表します。

正直、実装した自分でさえ、K、M、Gに存在意義が無い気がしてます。

これは削除して、C++0xのように、ユーザーが新たな種類のリテラル修飾子を定義できるようにした方がよいかもしれないですね。
http://ja.wikipedia.org/wiki/C++0x#.E5.AE.9A.E7.BE.A9.E6.B8.88.E3.81.BF.E3.83.BB.E3.83.A6.E3.83.BC.E3.82.B6.E3.83.BC.E5.AE.9A.E7.BE.A9.E3.81.AE.E6.96.B0.E3.81.9F.E3.81.AA.E3.83.AA.E3.83.86.E3.83.A9.E3.83.AB