# 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 Pour générer le fichier generator.sh: make Pour créer le dossier qui accueillera le parser mkdir out 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 ./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 Lire et éditer les fichiers java sur Pluma make edit Lire et éditer toutes les grammaires déjà présentes dans le dossier grammaires: make edit_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