La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Le langage VDL Jean-Paul Sansonnet.

Présentations similaires


Présentation au sujet: "Le langage VDL Jean-Paul Sansonnet."— Transcription de la présentation:

1 Le langage VDL Jean-Paul Sansonnet

2 Pourquoi un format spécial ?
Pour représenter La structure Le fonctionnement Pour raisonner sur un format maîtrisé Parcours de structures de données Granularité objet Schémas de données prédéfinis Raisonnement sur les actions Statique : Inv[f,g] ; Idem[f] Dynamique : Chroniques de l’exécution effective

3 Quel format ? Expressions arborescentes Granularité
Pour une représentation symbolique F[e1,e2,…en] où F ‘balise’ < e1,e2,…en > Granularité Encapsulation objet Méta données : middleware entre l’utilisateur et le composant effectif

4 La boucle Modale User Interface Médiateur Composant effectif Question
Commande Display Perception Perçu

5 Versions de VDL VDL 0.1 Arbre de concepts
VDL 0.2 View Query Language (VQL) VDLP Raisonnement procédural (Scripts) VDL concept  1 lexicalisation VDL 0.4 Granularité objet VDL 0.5 Schémas et observateurs

6 Concepts : Médiateur Un médiateur est composé de deux environnements :
Un ensemble de définitions de vues : c’est la représentation statique de la structure. Un ensemble d’instanciations de vues : c’est le runtime du médiateur. Il évolue au cours de l’exécution au fil du comportement modal de la boucle ou modless des processus physiques du composant

7 DEF[id, s, {farg,..}, (rule|inst)*;..]
Concepts : Vue Entité de structuration de base de VDL Syntaxe de définition : DEF[id, s, {farg,..}, (rule|inst)*;..] Instanciation de vue : NEW[id, Vi, args, ..] Prédéfinition de vues dans le Ground.

8 Concepts : Schémas

9 Concepts : Observateurs
Un observateur est un opérateur prédéfini applicable à toute vue dans le runtime d’un médiateur : fi(Vj) K V R L F P f1 f2 fi,R - fn

10 Squelette de Fshow SHOW[V_{i}]:= Switch[s ,
K|V, Text[NAME[V_{i}],"="VAL[VAL{i}]], R|L, Switch[ORIENT[V_{i}], VERTDOWN,Displaydown[Map[SHOW,VAL[V]]], VERTUP,Displayup[Map[SHOW,VAL[V]]], HOR,Displayhor[Map[SHOW,VAL[V]]] ], F, Button[NAME[V_{i}]], P, Text['a process'] ]

11 Exemple : Ground DEF[RED,K,{}, NAME=LEX[SYNSET['red']]; ISA=COLORS;
VAL=RGBColor[1.,0.,1.]] DEF[FIGURE,K,{alias_,shape_,color_,size_}, NAME=LEX[SYNSET[alias], SYNSET['figure'],SYNSET['drawing']]; SHAPE=shape; COLOR=color; SIZE=VAL[size]; SHOW=ON[COLOR[$],RESIZE[SHAPE[$],SIZE[$]]]] DEF[STACK,R,{alias_,size_}, NAME=LEX[SYNSET[alias],SYNSET['stack']]; VAL=NIL; DIM=size; MIN=0; ORIENT=VERTUP] Exemple : Ground

12 Exemple : Hanoi INITDEF[];(*init and loading of the Ground *)
DEF[move,F,{}, NAME=LEX[SYNSET['move'],SYNSET['displace']]; ARGS={{STACK, not EMPTY},{STACK}}; CHECK=(EMPTY[#2] Or SIZE[READ[#1]]<SIZE[READ[#2]])&; VAL=(POP[#1];PUSH[#2,IT])& ] DEF[hanoi,R,{}, NEW[RED, red]; NEW[RECTANGLE,rect,'disk']; NEW[FIGURE,d1,'disk',rect,red,NEW[BIG,z1]]; NEW[FIGURE,d2,'disk',rect,red,NEW[MEDIUM,z2]]; NEW[FIGURE,d3,'disk',rect,red,NEW[SMALL,z3]]; NEW[STACK,s1,NIL,3]; NEW[STACK,s2,NIL,3]; NEW[STACK,s3,NIL,3]; NEW[move, m]; NAME=LEX[SYNSET['game']]; VAL={s1,s2,s3}; ORIENT=HOR; PUSH[s1,d2];PUSH[s1,d3]); Exemple : Hanoi

13 Conclusion et Perspectives
Développer VQL 0.5 Notion de ‘Common Sense Requests’ Relations avec le monde XML Traitement de la référence modèle ‘Applet driven’ Modèle à résolution de contraintes sémantiques.


Télécharger ppt "Le langage VDL Jean-Paul Sansonnet."

Présentations similaires


Annonces Google