test
Signed-off-by: axeldavy <axel@axel-d2.(none)>
Signed-off-by: axeldavy <axel@axel-d2.(none)>
Signed-off-by: axeldavy <axel@axel-d2.(none)>
en cours

juste une erreur de frappe dans def, et le execution.ml en cours (sur la
demande d'axel)
Maintenant ça peut compiler.
suppression de choses inutiles
exec

suppression des doublons dans la liste renvoyée par topological (j'ai
gardé pour chaque porte que sa dernière occurence, pour être sûr que
toutes ses entrées aient été mises à jour avant de l'évaluer)
et le fichier executer, qui a bien avancé, il faut encore voir deux
trois trucs pour qu'il fonctionne
Gestion des registres. Implémentation de Mprogramme.
Main + petites modifs

Main implémentée, avec 5 arguments optionnels. changé plusieurs fichiers
pour que main fasse chaque opération pas à pas (schedule, impression,
conversion, execution).
et enlevé quelques fautes d'orthographe qui font moyen (dont convertion
-> conversion)
Pas pu compiler cependant, donc si quelqu'un peut le faire ça serait
cool (je n'ai pas de compilateur opérationnel ici, donc ça devra
attendre demain aprèm sauf si quelqu'un peut le faire)
oubli débile dans main

J'avais oublié de sauvegarder le main avant de commit.
Correction de scheduler.
Marc: dans Mp_eqs il y a ce qu'il faut exécuter avec les registres à la fin (ils seront donc traités dans ta boucle). Il y a aussi dans Mp_special qui contient la liste des registes pour que tu l'exécute au début. N'hésite pas aussi à modifier le main de koliaza pour que ça soit adapté aux arguments dont tu as besoin.
Correction d'erreurs à la compilation
J'ai commencé la rédaction du rapport.
Il est en latex. Vous n'avez pas besoin de connaitre le latex pour écrire dedans. Editez le .tex pour rajouter votre texte après les titres que j'ai mis. Quand on aura fini, je transformerais le tout en pdf.
Mise à jour du code de Marc et du mien
Mise à jour du code de Marc pour fonctionner avec mprogramme. Pour corriger les erreurs de compilation, j'ai du enlever des majuscules à mes types. Il y a toujours une erreur de compilation dans execution.ml car il n'aime pas la majuscule de !Main.overbose.
Adaptation du code de koliaza
Grosses corrections : tout compile

Bon, avec beaucoup d'aide de la part de tito (qui a réécrit pas mal du
code d'execution notamment, et qui m'a aider à débugger le programme),
voilà le résultat :
- le code compile dans sa totalité,
- la fonction main ouvre juste def
- elle appelle les différentes parties en envoyant si nécessaire un
argument de la forme moption, qui regroupe toutes les options possible
(très facile à modifier plus tard, principal avantage)
- def a un nouveau type (le moption)
-refonte majeure de execution, mais ça reste dans l'esprit avec moins de
duplication de code
- ajouté pas mal de trucs au .tex
- pas de makefile, ocamlbuild se charge de tout (et instruction pour
l'utiliser dans le tex)
Maintenant ça fonctionne !
J'ai corrigé le commit de koliaza pour que non seulement ça compile, mais aussi ça fonctionne! J'ai aussi mis en forme le rapport. Bon il y a quelques points à améliorer (par exemple 01 est reconnu comme 1 et non comme une VBitArray[0,1]), mais sinon ça va.
Implémentation de concat et select.
Attention, il y a un gros soucis pour les tableaux de bits.
En effet si l'on rentre a = 110, le bit 0 est 0, le bit 1 est 1 et let bit 2 est 1.
De plus a = 01 sera reconnu comme 1 et donc il y aura un bug.

Enfin, il faut que l'on trouve un moyen d'éviter les bugs causés par les tableaux vides,
car par exemple lors de ma concaténation, on pourrait se retrouver avec un tableau de taille 1 et il y aura des problèmes par la suite.
Bref, ce n'est pas fini.

Je ne pourrait vous aider avant 9h30, bon courage d'ici là.
eslice + bug inputs avec les tableaux