I’m currently working on a read-eval-print-loop (REPL) for ATS which would allow not only to define values and use them, but would also give informations about the type of (static or dynamic) functions and symbols. This REPL isn’t really usable for now but can though be useful. Here is a (non-exhaustive) list of (un)supported functionalities:
staload … declarationsGiven that I’m using the source code of ATS/Anairiats, you must have the SVN version of the source code of the compiler. Then download this file and apply the following instructions (the patches are against revision 2451):
repl_syntax_error.patch adds a syntax error exception in order to keep the lexbuf in a consistent staterepl_main_prelude.patch isolates the function prelude_load of ats_main.dats in the file ats_main_prelude.datsrepl_makefile.patch modifies the Makefiles to still be able to compile atsoptutils/atsrepl in $ATSHOME/make in $ATSHOME/ (if you have an weird error, try make -B)$ATSHOME/bin/atsreplIn short:
$ 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