2016-04-10 5 views

答えて

1

私にはうまく見えます。それは本当に多くの異なる標準溶液からではありません。

stmt  : matched | unmatched 
matched : "if" expr "then" matched "else" matched 
      | other_stmt 
unmatched : "if" expr "then" unmatched 
      | "if" expr "then" matched "else" unmatched 

標準溶液の利点はother_stmt(あなたの文法でa)が重複していないことである、と文法が他の複合文を拡張することが容易です。たとえば、whileという文を追加した場合:

stmt  : matched | unmatched 
matched : "if" expr "then" matched "else" matched 
      | "while" matched 
      | other_stmt 
unmatched : "if" expr "then" unmatched 
      | "if" expr "then" matched "else" unmatched 
      | "while" unmatched 
関連する問題