Interprétation par SK-traduction et syntaxe abstraite d'ordre supérieur
Résumé
Dans cet article nous exposons certaines des techniques utilisées pour l'implémentation de l'interprète MGS. De manière générale, ces techniques peuvent être utilisées pour le développement rapide d'interprètes pour des langages fonctionnels avec traits impératifs. Nous nous concentrons sur la réalisation de l'évaluateur qui est le module dédié à l'interprétation du noyau fonctionnel du langage. L'originalité de cette implémentation est qu'elle repose sur la réduction des applications par le langage hôte au lieu de la gérer elle-même. Des objectifs de simplicité, d'orthogonalité et d'efficacité ont motivé ce choix. Ce type d'approche est connu sous le nom de syntaxe abstraite d'ordre supérieur [PE88] et n'a jamais été utilisée, à notre connaissance, pour le développement d'un interprète. Nous utilisons une technique de combinatorisation afin de transformer les fonctions définies par l'utilisateur en fonctions du langage hôte. Les fonctions non-strictes et les traits impératifs sont intégrés à ce schéma grâce à l'utilisation de glaçons. Nous serons donc amenés à étudier la SK-traduction en présence de traits impératifs et de fonctions non-strictes.
Origine : Fichiers produits par l'(les) auteur(s)
Loading...