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
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.1.0. Introduction
9.1.1. Modularité
9.1.2. Encapsulation
9.1.3. Paramètre
9.1.4. Emploi par référence
9.1.5. Exemples d'application
9.1.6. Héritage de propriétés
9.1.7. Polymorphisme
9.1.8. Manipulation symbolique
9.1.9. Le contexte d'évaluation
9.1.99.1. Présentation
9.1.99.2. Aplatissement des contextes
9.2. La Syntaxe Abstraite : Manuel du concepteur
9.3. L'éditeur page : Guide de l'implanteur
Références
Rubrique Perl-Javascript

Le contexte d'évaluation

1. Présentation

2. Aplatissement des contextes

2. Aplatissement des contextes

Il s'agit des contextes issus d'une expression de chemin.

Par exemple :

contexte construit :

Aplatissement des contextes - contexte construit

contexte équivalent :

Aplatissement des contextes - contexte équivalent

La figure suivante présente le principe général de l'aplatissement des contextes : si l'environnement est composé uniquement d'une référence évaluée rfl, alors on insère, au lieu de l'environnement, le contexte attaché à cette référence évaluée.

contexte construit :

Aplatissement des contextes - contexte construit

contexte équivalent :

Aplatissement des contextes - contexte équivalent

syntaxe aplatie

(1)env ::= ε | trm env
(2)trm ::= def | ref | env
(3)    def ::= SINGLETON
(4)    ref ::= SINGLETON

Cette syntaxe est très proche de la syntaxe évaluée précédente : on a simplement unifié ici la notion d'environnement et la notion de contexte, sachant que :

Un environnement sera alors aussi bien un environnement évalué qu'une référence évaluée.

Note :
La notion d'aplatissement des contextes n'a pas de justification théorique profonde, mais elle ne modifie pas la sémantique du contexte construit. Il s'agit plutôt d'un procédé d'optimisation de l'espace mémoire utilisé et du temps d'accès aux définitions de texte. Elle permet néanmoins de bien faire ressortir l'aspect spécifique des expressions de chemin : en effet c'est justement dans un tel cas que le contexte pourra être en partie simplifié.