0

私は Java で小さな LR(1) パーサー ジェネレーターを書きました。これは、入力で文脈自由文法を与えられ (より適切に言えば、プロダクションです)、入力単語は、1) 文法が LR(1) ではないかどうかを出力します。2) 単語が3) 単語は文法によって拒否されます

これまでのところ、私はこの文法で試しました

S -> CC
C -> CC | d

この

A -> BA | e
B -> aB | b

(e は空の文字列であることに注意してください)

この文法では、パーサーは機能しますが、テスト用にLR(1)言語を確実に生成することがわかっている文法(プロダクションのリスト)を見つけるのに苦労しています。
さらに、プログラムのポイント (1) をテストするには、LR(1) ではない文脈自由文法が必要です。

あなたが私に与えることができる例はありますか?

4

0 に答える 0