Compilation

1734 mots 7 pages
Compilation Conception de grammaire
Jacques Farr´ e Jacques.Farre@unice.fr

Universit´ de Nice - Sophia Antipolis Licence 3 Informatique 2008-2009 e

1/14

Comment concevoir une grammaire ?
• un premier principe : ne pas essayer de mettre des aspects

contextuels dans une grammaire non contextuelle
• ces aspects seront trait´s par la passe de s´mantique statique e e

• un second principe : ˆtre g´n´ral est souvent plus simple que e e e

prendre les choses par le petit bout de la lorgnette
• y compris accepter syntaxiquement un langage plus large,

quitte ` restreindre dans la s´mantique statique a e • d´finir les constructions principales du langage : par exemple, e

pour un langage de programmation, d´clarations (de type, de e variable, de fonction), expressions, instructions, d´signations e de variable . . .

Universit´ de Nice - Sophia Antipolis Licence 3 Informatique 2008-2009 e

2/14

Quelques exemples
• ne pas essayer de mettre des aspects contextuels
• en C, int t[3*N + M] est autoris´ ` condition que N et M ea

soient des constantes, mais il est difficile de d´finir e syntaxiquement ce qu’est une expression constante ⇒ accepter syntaxiquement une expression et v´rifier plus tard que tous e ses op´randes repr´sentent des constantes e e • ˆtre g´n´ral est souvent plus simple e e e • d´claration de m´thode Java (extrait de la doc de Javacc) e e void MethodDeclaration() : {} { ( "public" | "protected" | "private" | "static" | "abstract" | "final" | "native" | "synchronized" )* ResultType() MethodDeclarator() [ "throws" NameList() ] ( Block() | ";" ) }

on accepte les r´p´titions (et mˆme des mots contradictoires e e e comme public et private) : plus facile que de pr´voir toutes e les combinaisons l´gales et on r`gle la question par un tableau e e de bits par exemple
Universit´ de Nice - Sophia Antipolis Licence 3 Informatique 2008-2009 e 3/14

Conception (partielle) d’une grammaire pour C le niveau global

• un programme C

en relation

  • Antlr
    750 mots | 3 pages
  • Assemblé
    428 mots | 2 pages
  • Les fausses confidences de marivaux, acte i scène 14
    1344 mots | 6 pages
  • Ségrégation
    1306 mots | 6 pages
  • La grammaire de maternelle au collège
    1168 mots | 5 pages
  • Arrangement
    2424 mots | 10 pages
  • les codes ont changer
    488 mots | 2 pages
  • Peut-on dire que la nature est bonne ?
    10068 mots | 41 pages
  • Nice 2008 Synth Se
    6499 mots | 26 pages
  • Ségrégation
    1022 mots | 5 pages
  • La grammaire dans l'enseignement et apprentissage d'une langue
    425 mots | 2 pages
  • Crise économique de 2008
    1183 mots | 5 pages
  • L'apprentissage de la grammaire
    986 mots | 4 pages
  • Le compostage
    3018 mots | 13 pages
  • Compostage
    399 mots | 2 pages