
Précédent : Implémentations Remonter : Implémentations Suivant
: Implémentations
abstraites
On appelle implémentation concrète l'attachement à un graphe
coloré de représentations en mémoire (champs) et de
micro-méthodes. En principe, une représentation peut être
attachée à chaque couleur (c-graphe) ou pigment (p-graphe). (Les
changements de représentations sont gérés automatiquement ; il en
va de même des combinaisons de représentations dans un p-graphe.)
A une transition régulière (locale ou héritée) peut être attachée
une ou deux micro-méthodes : une pré-méthode à son origine et/ou
une post-méthode à sa destination. Le plus souvent, une
pré-méthode seule convient ; mais une post-méthode seule est
parfois plus appropriée ; parfois encore, les deux éléments du
couple sont utiles. Si le premier cas est bien décrit en
programmation par objets classique, il n'en est pas de même pour
les deux autres. La programmation par objets colorés permet alors
une description élégante et naturelle.
A l'intérieur d'un même graphe coloré, les items
(représentations, pré- ou post-méthodes) peuvent être hérités le
long des transitions réflexes. Des règles d'héritage local sont
ainsi définies :
- dans un c-graphe (une seule dimension), on sélectionnera un
seul item dans le graphe d'héritage local associé à une
couleur. Le long de chaque chemin d'héritage, un item est
retenu s'il existe : c'est le premier rencontré s'il y en a
plusieurs (effet de masquage). Si plusieurs items différents
sont sélectionnés (du fait de l'existence de plusieurs chemins
d'héritage divergeant à partir d'un même noeud), cela résulte
soit d'une erreur de placement (à corriger), soit d'un défaut
de représentation (il y a nécessité de combiner des items :
ceci n'est possible que dans un p-graphe) ;
- dans un p-graphe (N dimensions), chaque mini-jeton présent
dans le noeud considéré donne lieu à la sélection d'un item
selon l'algorithme résumé ci-dessus. (Dans le cas des
micro-méthodes, ne sont impliqués que les mini-jetons ayant
rencontré la transition correspondante sur le chemin suivi par
chacun.) Les items obtenus doivent satisfaire chaque mini-jeton
impliqué. Une fois éliminés les duplicats, les items retenus
sont combinés. L'ordre et la méthode de combinaison proposés en
standard peuvent être modifiés via des protocoles métaobjets
(comme en CLOS).

Précédent : Implémentations Remonter : Implémentations Suivant
: Implémentations
abstraites