| Période de fabrication : 1975-1999 | Fabricant : fabricant non renseigné | |
| Domaines : Informatique et Communication | Sous-domaines : Ordinateurs | |
| Organisme : ACONIT | Ville : Grenoble (Isère) | |
| Modèle : | Matériaux : Carton, Papier |
Description
Titre traduit : Thesis : Methodology for writting compilers
Ce rapport de thèse intitulé Méthodologie d'écriture de compilateur a pour sous-titre Une expérience du langage Algol 68. En effet, bien que ce travail ait conduit à la réalisation d'un prototype de compilateur du langage Algol 68 intégral, l'objectif de la thèse est principalement de mettre au point une méthode d'écriture adaptée à des langages complexes.
Le premier chapitre définit la fonction de traduction et conclut sur un schéma résumé.
Le deuxième chapitre décrit le principal apport de la thèse : le code source après analyse descendante (type LL) est traduit en un arbre "décoré" par l'adjonction d'attributs sur les différents nœuds. Une importante partie de ce chapitre décrit l'ensemble de la grammaire d'Algol 68 avec ses particularités. Ce chapitre aborde ensuite le principe de la génération du code, plus classique : production de quadruplets (code opération, opérande 1, opérande 2, opérande 3) indépendants de la machine cible, production d'instructions chargeables pour une machine cible donnée, chargement des instructions exécutables.
Le troisième chapitre reprend le chapitre deux en montrant comment il est effectivement possible de produire le compilateur à partir des méthodes définies. Il expose l'organisation du compilateur en trois passages successifs.
Après une conclusion suivie des références nécessaires se trouvent trois annexes importantes :
– description de l'arbre abstrait et déclaration des décorations de l'arbre abstrait ;
– évaluation à partir d'un exemple ;
– un exemple de compilation, de chargement et d'exécution d'un programme Algol 68.
Jury de thèse : Président : J. Kuntzmann ; Rapporteur : M. Griffiths ; Examinateurs : J.C. Boussard, I. Currie, P. Jorrand, C.H.A. Koster, G. Veillon, J.P. Verjus
Utilisation
MM Cunin, Simonet et Voiron ont présenté cette thèse pour obtenir le grade de docteur-ingénieur. Ce titre a été créé en 1923 et permettait à des ingénieurs, sous certaines conditions, d'accéder au doctorat. Il a disparu lors de la réforme de 1984 unifiant les titres de doctorat.
Le langage Algol 68 est un successeur du langage de programmation européen Algol 60. Il se voulait universel, résolument innovant : le programmeur peut définir de nouveaux types de données et de nouveaux opérateurs, gérer des sémaphores pour la synchronisation des processus... Il peut ainsi adapter le langage à un domaine spécifique d'application. La très grande complexité du langage et la difficulté de réalisation des compilateurs pour les machines de l'époque ont fortement limité sa diffusion.
Le premier compilateur avait été réalisé en Angleterre au Royal Radar Establishement, mais pour une version réduite du langage. La première implantation complète a été réalisée par Philips MBLE, sur une machine cependant peu connue. Le compilateur expérimental développé sur IBM 360 dans le cadre de cette thèse a conduit à l'étude de deux compilateurs opérationnels : l'un sur IBM 360 (MM. Bretagnolle, Cunin, Voiron), l'autre sur CII Iris 80 (M. Delaunay).