Thèse soutenue

Integration de fonctionnalites logiques dans un langage fonctionnel fortement type : mlog une extension

FR  |  
EN
Auteur / Autrice : Vincent Poirriez
Direction : Guy Cousineau
Type : Thèse de doctorat
Discipline(s) : Sciences appliquées
Date : Soutenance en 1991
Etablissement(s) : Paris 7

Résumé

FR

Cette these decrit le langage mlog qui est une extension du langage ml avec des variables logiques et une unification. Un mecanisme de suspension d'application est introduit. Cette extension permet de manipuler des valeurs partiellement definies et fournit un moyen elegant de controle de l'evaluation. De nombreux exemples sont donnes, illustrant les possibilites offertes par mlog. Il est montre que le noyau du langage verifie une propriete de confluence, en effet bien que mlog soit un calcul strict l'ordre d'evaluation des membres d'une paire, d'une application ou d'unification ainsi que l'ordre d'evaluation des reveils des suspensions qui peuvent etre reveillees n'est pas impose. Le typage de ml est etendu a mlog et des arguments de typage sont utilises pour prouver que mlog est une extension conservative de ml, c'est-a-dire que les programmes qui n'utilisent pas les variables logiques ne sont pas penalises. Une machine abstraite, la camlog, extension de la cam, est decrite. La compilation d'un terme du noyau de mlog dans la camlog est decrite formellement et l'on prouve la correction de l'execution de ce code par la camlog