Thèse soutenue

Définition et mise en oeuvre d'une stratégie de compilation pour l'implantation des langages d'acteurs : application à PLASMA

FR  |  
EN
Auteur / Autrice : Jean-Paul Arcangeli
Direction : Jean Vignolle
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 1990
Etablissement(s) : Toulouse 3

Mots clés

FR

Mots clés contrôlés

Résumé

FR

La compilation est une strategie alternative pour l'implantation des langages d'acteurs qui, classiquement sont interpretes. Le compilateur complete l'environnement de programmation plasma, mais l'interprete est conserve pour le developpement et la mise au point. Le compilateur subvient aux besoins de performances: il traite des applications debogues avant leur exploitation. Le programme objet, est integre a l'interprete de base de plasma, donnant ainsi un nouvel interprete etendu aux acteurs de l'application compilee. Ces derniers s'exploitent alors comme s'ils s'agissaient d'acteurs primitifs. Ainsi, la strategie de compilation peut s'assimiler a une curryfication de l'interpretation. Le langage de la machine virtuelle lila, qui supporte l'interprete plasma, est le langage intermediaire du processus de compilation. Il offre un ensemble de primitives bien adaptees a la gestion de plasma, et il est de nouveau suffisamment eleve pour assurer la portabilite des logiciels engendres. La traduction des programmes lila en langage machine assure leur efficacite. Le compilateur est specialise dans la gestion des environnements et du controle: filtrage, fermetures, et transmissions de messages avec ou sans continuation. Un filtre est compile en un code lineaire, quelle que soit sa structure initiale: la structure de controle du filtrage n'est plus la recursivite mais la sequence et les branchements. Les fermetures compilees sont des arborescences: le script compile est une sequence de code lila, partage par toutes les instances d'un modele, et referencant un environnement compile specifique. De cette facon, les instances creees dynamiquement en phase d'exploitation sont structurees de la meme facon que les acteurs compiles du programme source. Enfin, la compilation des transmissions permet la programmation applicative et imperative, ainsi que les passages ou les captures de continuation. Ainsi, les applications comp