36 lines
2.2 KiB
Markdown
36 lines
2.2 KiB
Markdown
# PROJET AEL : générateur de parser
|
||
|
||
***Membres du groupe : Paul Faure, Auriane Lartigue, Coumba Soumaré, Morgane Foussats, Elise Barnabé, Perrine Afonso
|
||
***
|
||
|
||
## Comment le lancer et le tester? >
|
||
Pour récupérer le dépot git :
|
||
> git clone https://git.etud.insa-toulouse.fr/pfaure/AEL.git
|
||
|
||
Avant de pouvoir tester le parser il faut installer prolog si ce n’est pas déjà fait avec la commande :
|
||
> sudo apt-get install swi-prolog
|
||
>make (cela va générer le fichier generator.sh)
|
||
>mkdir out (dossier qui accueillera le parser)
|
||
lancer generator.sh avec deux arguments : le fichier contenant la grammaire et le nom du parser. Des fichiers d’exemples sont contenues dans le dossier grammaires.
|
||
exemple ./generator.sh dictionnaire dico
|
||
aller dans le dossier du parser puis lancer le .sh avec pour argument le mot à tester
|
||
exemple : ./dico.sh “ { id = int } “ retourne OK et ./dico.sh “ { id = int } “ retourne KO
|
||
|
||
Complément du Makefile >
|
||
Pour supprimer les dossiers/fichiers créés dans le dossier out : make clean_parseurs
|
||
Pour supprimer generator.sh : make clean_generator
|
||
Pour tout supprimer: make clean_all
|
||
make edit : lire et éditer les fichiers java sur Pluma
|
||
make edit_grammaires : lire et éditer toutes les grammaires déjà présentes dans le dossier grammaires
|
||
|
||
Explication globale>
|
||
Réalisation d’un générateur de parser codé en Java pour le langage Prolog. Nous avons choisi Prolog car il permet de backtracker automatiquement. Le choix de Java nous a simplifié le fait de manipuler des chaînes de caractères (via des fonctions existantes telles que split() ou strip() par exemple).
|
||
|
||
Organisation fichiers >
|
||
dossier src : contient l’ensemble du code java
|
||
IO.java -> gestion des fichiers en entrée et de la création des fichiers en sortie
|
||
Main.java -> Organise toutes les actions à réaliser (lecture de la grammaire, création de l’objet grammaire, génération du code Prolog du parseur et création du fichier launcher)
|
||
Grammaire.java, Regle.java, Symbole.java -> permettent de rédiger le code en Prolog en interprétant le fichier contenant la grammaire passée en paramètre.
|
||
|
||
dossier grammaires : contient différents exemples de grammaire
|
||
Makefile
|