add.mvap		   Un exemple simple de programme 
3n+2.mvap		   Un exemple moins simple de programme 
test.mvap		   Un exemple avec appel de fonction
MVaP.g4 		   Le parser du langage qui produit un analyseur ANTLR4
MVaPAssemblerListener.java Méthode appelée par le parcours de l'arbre d'analyse 
			   qui produit du code binaire (CB)
MVaPAssembler.java	   L'assembleur qui produit du code binaire
Pile.java		   Un gestionnaire de pile d'entiers
CBaP.java		   La machine virtuelle pour le code binaire à pile


** Pour compiler l'assembleur et le machine virtuelle, il faut :

     1- Avoir antlr dans son CLASSPATH :
 $ export CLASSPATH=.:/usr/local/java/antlr-4.4-complete.jar
     ou ajouter aux commandes : -cp .:/usr/local/java/antlr-4.4-complete.jar

     2- Lancer antlr sur MVaP.g4
 $ java -jar /usr/local/java/antlr-4.4-complete.jar MVaP.g4

     3- Compiler l'assembleur et la machine virtuelle (il suffit de demander la
     compilation des fichiers contenant les main, javac compilera les autres
     classes automatiquement...) 
 $ javac MVaPAssembler.java CBaP.java


** Pour exécuter du code mvap, il faut :

     1- Assembler :
 $ java MVaPAssembler add.mvap
     ou avec des traces :
 $ java MVaPAssembler -d add.mvap
     ce qui produit le fichier add.mvap.cbap

     2- Exécuter :
 $ java CBaP add.mvap.cbap
     ou pour mieux comprendre avec des traces :
 $ java CBaP -d add.mvap.cbap
    

** Pour construire le jar, il faut :
     1- avoir un META-INF/MANIFEST pour inclure le jar antlr dans le CLASSPATH :
Manifest-Version: 1.0
Version: 2.1
Main-Class: CBaP
Class-Path: /usr/local/java/antlr-4.4-complete.jar

     2- Contruire le jar avec :
 $ jar cfm MVaP.jar META-INF/MANIFEST *.class


     On peut aussi faire tout simplement :
 $ make

** Utilisation du jar :  

   1- Assembler :
 $ java -cp .:/usr/local/java/antlr-4.4-complete.jar:MVaP.jar MVaPAssembler add.mvap

   2- Exécuter :
 $ java -jar MVaP.jar -d add.mvap.cbap
