我正在做一個練習來爲語法創建FIRST和FOLLOW集。我認爲我所做的是正確的,但答案與我的略有不同。所以需要某人的幫助來驗證這一點。謝謝。 語法是: P -> L
L -> I X
X -> ; L | EPSILON
I -> A | C | W
A -> id := E
C -> if E then L O endif
O -> e
決定 這裏是我的語法: grammar esi_exp;
/* This will be the entry point of our parser. */
eval
: booleanExp
;
/* Addition and subtraction have the lowest precedence. */
booleanExp
: orExp
我想驗證我的ANTLR 4語法是LL(1)。 There is an option to do just that in older versions of ANTLR。 ANTLR 4中有類似的東西嗎? 我翻遍了the documentation,但沒有找到任何東西。雖然特別是the page on options似乎缺乏,我甚至沒有找到所有可能的選項列表。
我在下面有這個語法並試圖弄清楚是否可以使用LL語法分析器進行分析?如果沒有,請解釋。 S --> ab | cB
A --> b | Bb
B --> aAb | cC
C --> cA | Aba
從我所瞭解的兩組交集必須是空的通過配對不相交測試。 但我不知道從哪裏開始,一直在瀏覽我的教科書和http://en.wikipedia.org/wiki/LL_parser#Parsing_