J'étudie la magie des compilateurs et je ne comprends pas un résultat.Compilation - LL1 Grammaire
Voici la grammaire:
S -> A #
A -> B G D E
B -> + | - | EPSILON
C -> c C | EPSILON
G -> c C
D -> . C | EPSILON
E -> e B G | EPSILON
Lorsque je tente de trouver le « premier » et « suivre » des jeux, je reçois des résultats différents que celui que je reçois quand je le fais avec un facteur prédictif en ligne.
Voici les résultats donnés:
Non-terminal Symbol/Follow Set
S $
A #
B c
C e, ., #
G ., #
D e, #
E #
Pourquoi pas le jeu de suivi de G {e,, #.}? Parce que ce que je comprends est que selon la règle A, D suit le G, donc nous ajoutons., Mais il aurait aussi pu être EPSILON, donc nous passons à l'E et ça peut être ae, mais ça aurait aussi pu être EPSILON , donc nous passons au #, en respect avec la règle S.
Qu'est-ce qui me manque ici?
J'ai utilisé l'outil à http://hackingoff.com/compilers/predict-first-follow-set
Merci. J'ai utilisé http://hackingoff.com/compilers/predict-first-follow-set – eli0T