Annexes


Annexe A. Fichiers liés aux scripts

Cette annexe contient les fichiers correspondant aux scripts de l'exercice de multiplication donné dans la section 7.1.


A.1 Version purement de flot de contrôle

Dans cette version les noms des données sont mis entre deux caractères $ aussi bien dans le fichier de script que dans le fichier de message. C'est lors de la phase de codage manuel que le programmeur décide de leur utilisation: paramètre ou variable locale.

A.1.1 Fichier de script

A.1.2 Fichier de messages


A.2 Version combinant flot de contrôle et flot de données

Les noms de variable sont enregistrés tels quels même dans les messages à afficher. Des traitements spéciaux des noms de données sont effectués lors de l'affichage des messages.

A.2.1 Fichier de script

A.2.2 Fichier de messages


Annexes B. Fichiers générés

Cette annexe contient les fichiers produits par le générateur automatique de code pour les scripts de l'exercice de multiplication donné dans la section 7.1. Le langage cible est Ada.


B.1 Version purement de flot de contrôle

Puisque le nom du script est simplescript_cf2, le générateur produit cinq fichiers dont les noms sont les suivants: simplescript_cf2.PRG, simplescript_cf2.DEF, simplescript_cf2.IMP, simplescript_cf2TC.DEF, simplescript_cf2TC.IMP.

B.1.1 Le programme principal: simplescript_cf2.PRG

B.1.2 La spécification de l'automate à états finis: simplescript_cf2.DEF

B.1.3 L'implémentation de l'automate à états finis: simplescript_cf2.IMP

B.1.4 La spécification des modules manuels: simplescript_cf2TC.DEF

B.1.5 Implémentation des modules manuels: simplescript_cf2TC.IMP


B.2 Version avec la combinaison flot de contrôle - flot de données

Le nom du script est simplescript_cd. Le générateur produit six fichiers dont les noms sont les suivants: simplescript_cd.PRG, simplescript_cd.DEF, simplescript_cd.IMP, simplescript_cdDF.DEF, simplescript_cdTC.DEF, simplescript_cdTC.IMP. Deux autres fichiers simplescript_cdCP.DEF et simplescript_cdCP.DEF, sont aussi générés dans le cas où des processus parallèles sont nécessaires.

B.2.1 Le programme principal: simplescript_cd.PRG

B.2.2 Spécification de l'automate à états finis: simplescript_cd.DEF

B.2.3 Implémentation de l'automate à états finis: simplescript_cd.IMP

B.2.4 Spécification des modules manuels: simplescript_cdTC.DEF

B.2.5 Implémentation des modules manuels: simplescript_cdTC.IMP

B.2.6 Déclaration du flot de données:simplescript_cdDF.DEF


Annexe C. Règles pour le traçage des arcs

Ces règles sont utilisées pour réduire le nombre des coudes dans les arcs.


C.1 Cas 'No Intermediate'

Rappelons que nous avons le cas 'no Intermediate' si les deux noeuds X et Y sont adjacents, c'est-à-dire vérifient la condition suivante:

(|XOrigine - XDestination| est inférieur ou égal à 1) et (|YOrigine - YDestination| est inférieur ou égal à 1)


C.2 Cas 'Vertical intermediates' et 'Horizontal intermediates'

Les conditions associées à ces deux cas sont, respectivement, les suivantes:

  • (|XOrigine - XDestination| est inférieur ou égal à 1) et (|YOrigine - YDestination| est supérieur ou égal à 1)
  • (|XOrigine - XDestination| est supérieur ou égal à 1) et (|YOrigine - YDestination| est inférieur ou égal à 1)

Remarque:

Ces règles ont été conçues pour les arcs de flot de contrôle. Pour les arcs de flot de données, il n'y a qu'une seule alternative 'Down-Up'. Nous avons donc ajouté cette alternative pour les directions qui ne l'ont pas prévue, comme la direction 'West' du cas 'No Intermediate'.


[Précédent]