Skimmel.EvalLe module Eval fournit un interprète pour Skimmel.
La sémantique du langage source est défini par un interprète de référence, la fonction eval de ce module.
Celle-ci associe aux expressions du langage (de type t) leur valeur (de type value) dans un environnement (de type env). L'environnement détermine la valeur des variables libres de l'expression.
Les valeurs sont les résultats possibles de l'évaluation d'une expression du langage source Skimmel.
val pp_value : Format.formatter -> value -> unitLes valeurs sont affichables.
Les environnements spécifient la valeur des variables libres d'une expression du langage en associant à chacune sa valeur.
val pp_env : Format.formatter -> env -> unitLes environnements sont affichables.
val initial_env : envL'environnement initial, vide.
Un appel eval env e renvoie la valeur v de l'expression e, en supposant que la valeur des variables libres de e soit définie par l'environnement env.
Cet appel interrompt l'exécution du programme avec une erreur si l'expression e est mal typée. Par exemple, e pourrait :
env.La liste ci-dessus n'est pas exhaustive.