The rewriting calculus
Le calcul de réécriture
Résumé
Le manuscrit présente une partie des travaux de recherche que j'ai effectués au cours des dix dernières années. Je me suis focalisé en particulier sur la présentation du calcul de réécriture comme un formalisme théorique permettant de donner la sémantique dynamique et statique de toute une famille de langages basés sur le filtrage, les règles et les stratégies de réécriture. Je présente le calcul de réécriture général ainsi que plusieurs instances et extensions, en mettant l'accent sur l'expressivité et sur les propriétés de ces calculs. Je montre en particulier que l'intégration uniforme des mécanismes de bases de la réécriture et du lambda-calcul permet une définition précise du processus de réécriture sous des stratégies ainsi que des encodages, typés ou non, de différents formalismes similaires. Je présente dans ce manuscrit des systèmes de types développés dans l'optique d'un formalisme théorique pour le typage dans des langages de programmation à base de règles et je ne discute que brièvement les systèmes de types dépendants étudiés dans une perspective logique. Le filtrage et l'application de substitutions obtenues comme résultat sont des opérations réalisées au niveau méta du calcul de réécriture mais une version explicite permet leur manipulation modulaire et efficace au niveau objet du calcul. Cette version explicite du calcul est étendue avec des structure de graphe permettant de représenter explicitement le partage et les cycles. Je propose également un formalisme général permettant d'exprimer différents calculs à motif et une méthodologie qui met en évidence les points clés permettant d'obtenir la confluence de ces calculs.
Domaines
Génie logiciel [cs.SE]
Loading...