nf11 – tp2 : generation d`analyseur lexical et - UTC

NF11 TP2 : GENERATION DANALYSEUR LEXICAL ET
SYNTAXIQUE (1ERE SEANCE)
GENERALITES
OBJECTIFS
Créer une grammaire du langage Logo et une représentation intermédiaire d’un programme
Logo.
Générer un analyseur syntaxique de cette grammaire.
Créer un interpréteur graphique du langage Logo.
Crée une table des symboles d’un programme.
Vérifier quelques conditions sémantiques.
OUTILS
Générateur d’analyseur lexical et syntaxique (lexer – parser) à partir de grammaires AntLR
Version 4.
Matériel initial pour le TP2
Site moodle NF11, Espace projets –TP/Outils TP2/nf11-student.zip
Ce fichier contient l’embryon des grammaires LOGO, la librairie antLR et les fichiers
batch windows de génération du code.
DOCUMENTATION ANTLR
Site : http://www.antlr.org/
Documentation : ANTLR v4, (
Getting Started with ANTLR v
4), site ANTLR,
API : http://www.antlr.org/api/Java/index.html
Livre : The definitive ANTLR reference, Bibliothèque UTC
DOCUMENTATION LOGO
Manuel Logo : site moodle NF11, Espace projets –TP/Documentations/Manuel LOGO,
DOCUMENTATION JAVA
http://docs.oracle.com/javase/tutorial/
T
élécharger le fichier
Espace projets
Importer dans eclipse le projet qu'il contient (file/import General/Existing Projects...
next Select archive file) ;
L’ensemble des fichiers doit ressembler à
FIGURE
Les erreurs de compilation disparaîtront dès la première génération de code.
batch antlr-
generate permet de générer les fichiers java
grammar/Logo.g4
. Le fichier batch antlr
dérivati
on du programme
dans une console en dehors de Eclipse.
ETAPE 1: INTRODUCTION
CONFIGURATION D’ECLIPSE
élécharger le fichier
nf11-student.zip à partir du site
moodle NF11 :
TP/Outils TP2/nf11-student.zip
Importer dans eclipse le projet qu'il contient (file/import General/Existing Projects...
next Select archive file) ;
L’ensemble des fichiers doit ressembler à
celui de la Figure 1.
FIGURE
1 : APERÇU DU PROJET ECLIPSE
Les erreurs de compilation disparaîtront dès la première génération de code.
generate permet de générer les fichiers java
à partir de la grammaire
. Le fichier batch antlr
-
parse permet de visualiser l'arbre de
on du programme
programs/logo-prg.txt
. Ces deux fichiers doivent être lancés
dans une console en dehors de Eclipse.
Importer dans eclipse le projet qu'il contient (file/import General/Existing Projects...
Les erreurs de compilation disparaîtront dès la première génération de code.
Le fichier
à partir de la grammaire
parse permet de visualiser l'arbre de
. Ces deux fichiers doivent être lancés
Exécuter la commande
(src
) dans Eclipse pour voir les classes générées. Exécuter la commande
dans une console externe.
Etudier
la grammaire introductive
Exécuter logogui.
Logo
la zone gauche
. Exécuter.
l’interprétation du
programme Logo.
Ajouter l’instruction
'tg' INT
règle instruction.
Ajouter une
prg.txt.
Générer les classes. Parser le programme.
Exécuter
LogoApplication
Exécuter.
Ajouter une méthode visitTg (faire générer la méthode
meth
ods) à la classe LogoTreeVisitor.
Traceur. Relancer
LogoApplication
Etudier le document Manuel Logo pour avoir une idée de ce langage.
Ajouter l
es commandes de la tortue
Dans
plusieurs semaines vous obtiendrez le résultat suivant.
PREMIERS TESTS
Exécuter la commande
antlr-generate dans une console externe.
Rafraîchir
) dans Eclipse pour voir les classes générées. Exécuter la commande
dans une console externe.
la grammaire introductive
Logo4.g du répertoire grammar.
Logo
Application. Taper un programme
conforme à la grammaire
. Exécuter.
L'
application permet de visualiser le r
programme Logo.
'tg' INT
#tg dans la grammaire Logo.g
4 comme alternative dans la
Ajouter une
ou deux instructions au programme
programs/
Générer les classes. Parser le programme.
LogoApplication
et recopier le programme logo
dans le panel de gauche
Ajouter une méthode visitTg (faire générer la méthode
-
source/override/implement
ods) à la classe LogoTreeVisitor.
Ajouter une méthode nécessaire à la classe
LogoApplication
.
Etudier le document Manuel Logo pour avoir une idée de ce langage.
es commandes de la tortue
: lc, bc, ve, re, fpos, fcc.
plusieurs semaines vous obtiendrez le résultat suivant.
Rafraîchir
le source
) dans Eclipse pour voir les classes générées. Exécuter la commande
antlr-parse
conforme à la grammaire
dans
application permet de visualiser le r
ésultat de
4 comme alternative dans la
programs/
logo-
dans le panel de gauche
.
source/override/implement
Ajouter une méthode nécessaire à la classe
Etudier le document Manuel Logo pour avoir une idée de ce langage.
1 / 3 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !