私は小さなコマンド言語を書いています。言語にはいくつかの簡単なコマンドがあり、複雑なコマンドを作ることができます。たとえば、コマンドfry an egg
、make a sandwich
、make coffee
がある場合、新しいコマンドを作成することができます。与えられたセットのパワーセットの生産ルールを書く方法
make a breakfast := fry an egg, make a sandwich, make coffee
はしかし、時には、私はmake a breakfast
が設定されたコマンドの任意のサブセットすることが可能であるなど、朝食、時にはコーヒーやサンドイッチの両方のための唯一のコーヒーをしたい:{fry an egg, make a sandwich, make coffee}
このように私はのパワーセットを定義するルールが必要指定された一連の単純なコマンド。それは理にかなっていますか?それをしてもいいですか ?
私にとっては意味があり、おそらくそれを行うことができます。しかし、あなたの既存の文法やサンプルコードの一部を見ていなくても、それを解析するのは難しいです。 – aschepler
「ルール」とはどういう意味ですか?どのようなパーサを使用していますか?あなたの例には欠陥があります:私は2つの卵を揚げることができません。その制限はパーサーに焼き付ける必要がありますか?基本的に、私は途中で精通しているパーサーのパワーセットルールを書く方法を知らないし、なぜ私はしたいだろうか分からない。 –