1. Introduction
Cette partie s'intéresse plus spécifiquement à l'éditeur ligne.
fonctions externes
evale ‹exp› ‹ctx›
‹exp› évaluée dans le contexte ‹ctx›.sais ‹nomphyl›
‹nomphyl›.sais-lst ‹nomphyl›
‹nomphyl› – « liste » s'entend ici au sens de Lisp.sais-num ‹nomphyl› ‹num›
‹num› opérateurs dans le phylum ‹nomphyl›.imp ‹nomphyl› ‹exp› ‹tab› ‹holo›
‹exp› dans le phylum ‹nomphyl›, avec une tabulation initiale ‹tab› et un holophraste initial ‹holo›.imp-lst ‹nomphyl› ‹lst-exp› ‹tab› ‹holo›
‹lst-exp›.imp-num ‹nomphyl› ‹lst-exp› ‹tab› ‹holo› ‹num›
‹num› premiers termes de la liste ‹lst-exp›, s'il se peut.imp-eval ‹nomphyl› ‹exp-eval› ‹tab› ‹holo›
‹exp-eval› dans le phylum ‹nomphyl›, avec une tabulation initiale ‹tab› et un holophraste initial ‹holo›.imp-lst-eval ‹nomphyl› ‹lst-exp-eval› ‹tab› ‹holo›
‹lst-exp-eval›.imp-num-eval ‹nomphyl› ‹lst-exp-eval› ‹tab› ‹holo› ‹num›
‹num› premiers termes de la liste d'expressions évaluées ‹lst-exp-eval›, s'il se peut.variables héritées
gtab | : | tabulation – incrémenté par la commande '('. |
gholo | : | holophraste – modifié par la commande 'h'. |
gnum | : | valeur de <num> à l'interprétation d'une commande. |
genv | : | environnement courant – il permet de construire le contexte d'évaluation des textes. |
gref | : | référence sur la position courante ; on utilise une référence sur l'objet, et non l'objet lui-même, pour réaliser les effets de bord (insertion, suppression). |
glst | : | référence de début de liste des "termes". |
goper | : | opérateur de la position courante. |
gphyl | : | phylum de la position courante. |
fonctions utilisateur
ERREUR-com ‹msg›
‹msg›, et vide le tampon des commandes : les commandes qui suivent sont ignorées, et le contrôle est rendu à l'utilisateur.num-com
gnum la valeur de <num> à l'interprétation d'une commande.eval-macro ‹macro›
‹macro›, où les commandes de paramètre '-' sont instanciées.eval-ctx ‹lst-env›
‹lst-env›.sais-rsp
sais-exp
imp-vide
....pred ‹loc› ‹lst›
succ ‹loc› ‹lst›
sets ‹var1› ‹val1› ... ‹varN› ‹valN›
‹var1› ... ‹varN›, puis affecte à ces variables les valeurs respectives ‹val1› ... ‹valN›.setb ‹var1› ... ‹varN›
‹var1› ... ‹varN›.sets et setb utilisent, pour une variable var donnée, une variable tampon Lisp : lst*var. On accède donc à chaque instant au contexte d'évaluation non évalué par la variable lst*genv.L'entrée dans les champs d'un opérateur : on numérote les champs d'un opérateur, de 1 à N, dans l'ordre où ils apparaissent dans l'expression de la syntaxe initiale.
Par exemple :
'e2' devant un opérateur use permet d'entrer dans l'environnement local d'utilisation ;'e' devant un opérateur def permet d'entrer dans le champ <nom> de l'opérateur (le nom de l'opérateur).La sortie des champs d'un opérateur : elle ne dépend pas du champ dont on vient mais de l'opérateur dans lequel on était entré.
L'impression évaluée : il s'agit généralement de la même impression que l'impression non évaluée ; cependant pour les représentations ou les atomes atm, on présente une impression plus "attractive" – du moins plus éloignée de la représentation interne des textes.