Je suis actuellement en train de programmer une boucle interactive pour ATS, permettant non seulement de définir des valeurs et de les utiliser, mais également donnant des informations concernant les types des fonctions (statiques ou dynamiques) et des symboles. Cette boucle interactive n’est pas vraiment utilisable pour l’instant, mais n’est pas complètement inutile non plus. Voici à titre indicatif une liste non exhaustive des fonctionnalités supportées (ou pas) pour l’instant :
staload …Étant donné que j’utilise le code source du compilateur ATS/Anairiats, vous devez avoir la version SVN de son code source. Télécharger ensuite
ce fichier
et appliquez les instructions suivantes (les patchs sont des patchs sur la révision 2451) :
repl_syntax_error.patch rajout l’exception d’erreur de syntaxe pour pouvoir conserver le lexbuf dans un état consistantrepl_main_prelude.patch isole les fonctions de ats_main.dats permettant le chargement de la librairie de base dans ats_main_prelude.dats
repl_makefile.patch modifie les Makefiles afin de pouvoir continuer à compiler atsoptutils/atsrepl/ dans $ATSHOME/make dans $ATSHOME (si vous avez une erreur bizarre, essayez make -B)$ATSHOME/bin/atsreplEn résumé :
$ cd $ATSHOME $ wget http://www.eleves.ens.fr/home/brunerie/docs/ats_repl.tgz $ tar xvzf ats_repl.tgz $ cat ATS_Repl_patch/repl_*.patch | patch -p0 $ cp -r ATS_Repl_patch/utils/atsrepl utils $ make $ ./bin/atsrepl