- Yanis Tabellout : 21307532
- Salim Tabellout : 21307533
Il s'agit du projet APS délivré pour Les étudiants du Master 1 STL. Ce projet est divisé en 4 parties :
- APS0: noyau d'APS
- APS1: Instructions et mémoire
- APS1A: Référence et valeur, paramètres procéduraux
- APS2: Liste
Chaque partie d'aps contient en plus de l'analyseur syntaxique et lexicale :
- Typeur
- Évaluateur
APS0
├───archive
├───expected
│ ├───defs
│ │ ├───const_1
│ │ │ ├───eval.result
│ │ │ └───type.result
│ │ └───...
│ ├───exprs
│ │ ├───abs_1
│ │ └───...
│ └───...
├───results
│ ├───defs
│ │ ├───const_1
│ │ │ ├───eval.result
│ │ │ └───type.result
│ │ └───...
│ ├───exprs
│ │ ├───abs_1
│ │ └───...
│ ├───...
│ │
│ └───results.csv
├───Samples
│ ├───archive
│ └───defs
│ └──────const_1.aps
├───Setup.ipynb
├───type.sh
└───test.sh
- expected : contient les résultats attendues pour chaque programme de samples (résultat du typeur et de l'évaluateur)
- results : contient le résultat des programmes aps de samples, et le fichiers results.csv contient le résultat de tout les programmes
- Samples : contient les programmes aps
Deux choix s'imposent, soit vous prenez le test.sh ou bien d'utiliser setup.ipynb. On vous conseille vivement d'utiliser le notebook car il permettra de sauvegarder tout les résultats des programmes (typage/évaluation) mais aussi d'avoir certaine statistques.
Dans un shell
./test.sh
# si vous être sur windows faudra installer wsl et installer le compilateur d'ocaml puis faire :
wsl
./test.sh # la commande devrait être
Le notebook contient toutes les instructions nécessaires pour :
- Générer les éxecutables
- Génrer les fichiers results
- Faire des tests automatisés et les sauvegarders
- Afficher certaines statstiques
Veuillez installer Python ainsi que les extensions nécessaire pour le notebook (jupyter). On a testé le script sur la version 3.10.5. Si vous êtes sur Windows veuillez installer wsl ainsi que le compilateur d'ocaml dans wsl. Si vous rencontrez des difficulutés veuillez installer les bons package, mais en cas de soucis veullez essayer d'installer les paquets suivants :
pip install pandas
pip install matplotlib
pip install sklearn