1

Microsoft の新しい M Grammar で DSL に取り組んでいますが、10 進値を許可する必要があります。私は小数を次のように定義しました

token digits = "0".."9";
token spot = ".";
token decimal = digits+ | digits+ spot digits+ | spot digits+;

それはうまくいくようですが、もっと良い方法はありますか?何かが足りないような気がします。

4

1 に答える 1

1

いろいろ調べた結果、Language.Grammar.Decimal でビルドを使用できることがわかりました。のように

syntax Cost = Language.Grammar.Decimal

Language.Base の「名前空間」にもいくつかの便利な機能があります。Language.Base と Language.Grammar の両方が intellipad に組み込まれています。

于 2009-08-27T21:12:53.490 に答える