2012-05-17 6 views
8

パーサーと文法の理解をさらに深めるために、言語ののLL(2)の(うまくいけば単純な) LL(1)。すなわち、LL(2)文法によって生成されるが、LL(1)文法では生成されない言語である。LL(2)LL以外の言語(1)

このクラスには便利な言語がありますか?私は、LL(2)だがLL(1)ではないコンピュータ言語を想像できますか?

+1

http://dl.acm.org/citation.cfm?id=805431(要約書を参照) –

+0

ありがとう、これは私が尋ねたものではありません。私はそのような言語が存在することを知っている。私はちょうど例としてそれらの1つを見たいと思う。 – Norswap

答えて

12

ギュンターの答えにリンクブックに記載された例:

S -> a S A | epsilon 
A -> a^k b S | c 

がありますLL(k)ではないLL(k + 1)言語を記述する文法。特に、

S -> a S A | epsilon 
A -> a b S | c 

は、LL(1)ではないLL(2)言語を記述する文法です。