afficher >><< masquer ]
SAMPI - Editeur structuré
1. Le Problème et la Proposition
2. Le Langage Primitif de Représentation Textuelle
2.1. Présentation de la Syntaxe Concrète
2.2. Notations
2.3. Exemple de structuration des données
2.4. Exemple de structuration des traitements
2.5. Exemple de structurations connexes
3. Le Langage Complété pour la Structuration des Textes
3.1. Présentation de la Syntaxe Complétée
3.2. Etude quantitative de l'évolution des programmes
3.3. L'édition syntaxique
3.4. étude de cas : le langage LTR3 et l'atelier ENTREPRISE
4. L'Enrichissement du Langage par de Nouveaux Concepts
4.1. Présentation de la Syntaxe Abstraite
4.2. Les difficultés
4.3. Compléter la Syntaxe
5. La Formalisation des Solutions Techniques
5.1. L'évaluation fonctionnelle
5.2. La structuration par les objets
5.3. Modèle sémantique comparé de l'évaluateur
5.4. Comparaison critique
5.5. Construction de la Syntaxe Abstraite
5.5.1. La syntaxe de la syntaxe abstraite
5.5.2. Le graphe des phyla
5.5.22.1. Position du problème
5.5.22.2. Attributs d'opérateurs
5.5.22.3. Attributs de phyla
5.5.22.4. Fonctions utilisateur
5.5.22.5. Remarques
5.5.3. Construction du graphe
6. Les Comparaisons avec d'autres Approches
7. Les Perspectives
8. Les Editeurs
8.0. brisé sur la barrière de la complexité (une fois de plus)
8.1. L'éditeur ligne : Manuel de l'utilisateur
8.2. L'éditeur page : Guide de l'utilisateur
9. Les Aspects d'Implantation
9.1. Contexte d'évaluation
9.2. La Syntaxe Abstraite : Manuel du concepteur
9.3. L'éditeur page : Guide de l'implanteur
Références
Rubrique Perl-Javascript

Le graphe des phyla

1. Position du problème

2. Attributs d'opérateurs

3. Attributs de phyla

4. Fonctions utilisateur

5. Remarques

1. Position du problème

Dans les parties précédentes, on a dégagé les attributs de définition des opérateurs :

Comme il a été dit, ces attributs sont des fonctions Lisp, « fournies en standard » pour la syntaxe initiale, et qu'il faut soi-même écrire quand on complète la syntaxe initiale.

Cela signifie que la dérivation d'un opérateur :

opérateur -> phylum ...

n'est pas exprimée de quelque manière, et que c'est au concepteur d'un nouvel opérateur de le traduire, dans le texte des fonctions d'attributs, cette propriété. En particulier, on n'a pas à indiquer la syntaxe concrète attachée à la syntaxe abstraite définie, puisque c'est le concepteur qui complète, à chaque définition d'un opérateur, l'analyseur syntaxique et le décompilateur d'arbre, ces deux outils réalisant la passerelle entre la syntaxe concrète – le texte qui s'affiche – et la syntaxe abstraite – la représentation interne sous forme d'arbre.

En revanche on permet d'exprimer, sous une forme synthétique, les dérivations des phyla. Les attributs d'un opérateur sont en effet attachés à cet opérateur, indépendamment des phyla. Donc une fois définis ces attributs, on peut juger raisonnable d'attendre qu'un "traitement automatique" – c'est-à-dire l'exécution d'un programme – sache retrouver, pour chaque phylum, un attribut donné d'un opérateur donné.

Pour ce faire, on construit le graphe des phyla. Pour chaque phylum, on connaît alors