1 / 13

Le langage VDL

Le langage VDL. Jean-Paul Sansonnet. 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

makala
Download Presentation

Le langage VDL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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 • 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. Interface Composant Perçu Perception Display Commande Question User Composant effectif Médiateur La boucle Modale

  5. Versions de VDL • VDL 0.1 Arbre de concepts • VDL 0.2 View Query Language (VQL) • VDLP Raisonnement procédural (Scripts) • VDL 0.3 1 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. 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)

  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. DEF[RED,K,{}, NAME=LEX[SYNSET['red']]; ISA=COLORS; VAL=RGBColor[1.,0.,1.]] DEF[FIGURE,K,{alias_,shape_,color_,size_}, 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. 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; RESET=(RESET/@VAL[$];PUSH[s1,d1]; 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.

More Related