[1512] Re:「1回以上の繰り返し」の定義
投稿者:yuya
2010/03/10 14:48:02
ご回答ありがとうございます。
>-が降ってきた時点でそれまでの分をreduceしないと左結合にならないわけですが、
>現状、ここでshift/reduce conflictが起きており、shiftが優先されるため
>結合規則が逆順になっています。
なるほどー、よく分かりました。もし右結合を明示したければ
expression /* 「式」とは… */
: primary_expression /* 「一次式」、 */
| primary_expression ADD expression /* または、「一次式」 + 「式」 */
と書くべきなわけですね。
そもそも件名に「『一回以上の繰り返し』の定義」なんて書いちゃいましたが、
ただ単にそう定義するだけならレクサのレベルの話であって、
階層的な解析木を築くための構文規則を定めるのがパーサの役割だから、
結合規則によって規則の書き方が変わって当然なのですね。
結果的には誤植(?)がきっかけで非常に勉強になりました。引き続き読み進めていきます。