Grammaire LL
Dans la théorie du langage formel , une grammaire LL est une grammaire hors-contexte qui peut être analysée par un analyseur LL , qui analyse l'entrée de L gauche à droite, et construit une dérivation gauche de la phrase (d' où LL, par rapport à l'analyseur LR qui construit une dérivation la plus à droite).
La grammaire C [1] n’est pas LL (1): la partie inférieure montre un analyseur qui a digéré les jetons "
int v ;main(){
" et qui concerne le choix d’une règle pour dériver le non-terminal " Stmt
". En regardant uniquement le premier jeton d'anticipation " v
", il ne peut pas choisir laquelle des deux alternatives pour " Stmt
" choisir, étant donné que deux suites d'entrées sont possibles. Ils peuvent être distingués en jetant un coup d'œil sur le deuxième jeton d'anticipation (fond jaune). Un langage qui a une grammaire LL est appelé un langage LL . Ceux-ci forment des sous-ensembles de grammaires déterministes sans contexte (DCFG) et de langages déterministes sans contexte (DCFL), respectivement.
On dit qu'une grammaire ou une langue donnée "est une grammaire / langue LL" ou simplement "est LL" pour indiquer qu'elle se trouve dans cette classe.
Notes et références
- (en) Brian W. Kernighan et Dennis M. Ritchie, The C Programming Language, Englewood Cliffs/NJ, Prentice Hall, coll. « Prentice Hall Software Series », , 272 p. (ISBN 0-13-110362-8)
Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.