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

  1. (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)
  • Portail de la linguistique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.