from eviss to viola: visual parser generators based on extended constraint multiset grammars

31
1 From Eviss to Viola: Visual Parser Generators based on Extended Constraint Multiset G rammars Jiro Tanaka University of Tsukuba [email protected]

Upload: soren

Post on 05-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

From Eviss to Viola: Visual Parser Generators based on Extended Constraint Multiset Grammars. Jiro Tanaka University of Tsukuba [email protected]. Contents. Visual Parsing Visual Parser Generators Eviss Viola. Box. Collection. text left width height. Link. select deselect. cut - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

1

From Eviss to Viola:Visual Parser Generators based

on Extended Constraint Multiset Grammars

Jiro Tanaka

University of [email protected]

Page 2: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

2

Contents

Visual Parsing Visual Parser Generators

EvissViola

Page 3: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

3

Visual systems and visual languages

Visual systems are systems that process visual languages.

Visual languages are two (or more) dimensional languages with have structures.

ER-diagrams

customer goodsorder

No. name number No.name price

Class diagrams

textleftwidthheightcutselect

Box

selectdeselect

Link

name

add sheetnext sheetsaveload

Drawing

Collection

cutcopymove

Selection

delete

Sheet

Page 4: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

4

Visual parsing: motivation

⇒We would like to implement visual systems with less effort and time.

Page 5: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

5

What is Necessary

2D version of yacc (text -> visual)A visual parser generator such as yacc w

hich generates a parser if rules and actions are given.

Easy visual system builderMake visual systems with less efforts, onl

y by giving their rules.

Page 6: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

6

What is Necessary (2)

Generated visual systems keep the semantic relationships between figure elements, when moved.

3

+

4

3

+

4

3

+

4

3

+

4

Page 7: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

7

Visual Parser Generator:

GrammarExtended CMG (Constraint Multiset Gram

mars)

Page 8: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

8

Extended CMG Extended Constraint Multiset Grammar

CMG is used to describe the relationship between figures using constraints.

Extended CMG is obtained by adding various actions to CMG.

val

textTextvaluemidCirclemidand

midTextmidCirclewheretextmidTextmidCircle

valuemidList

.,...

),(),(::),(

Page 9: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

9

Actions Actions are arbitrary script such as

calculating valuescreating widgetsredrawing the figures in the execution window

alter the attributes of the figures move the figures create new figures delete the figures

Page 10: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

10

3

*

4 5

+

How the ListTree is Parsed1. ListTree consists of a circle with a text string in it. No arrow comes into the node.2. ListTree consists of a circle with a text string in it. There exist two arrows which come into the circle. Each arrow comes from another ListTree.

3

*

4 5

+

Page 11: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

11

Contents

Visual Parsing Visual Parser Generators

EvissViola

Page 12: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

12

Visual Parser Generators

We have implemented a series of visual parser generators based on Extended CMG.

Eviss [1997] is the first one. Implemented in Tcl/Tk

Viola [2004] is the latest one. Implemented in Java

Page 13: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

13

“Eviss” SystemDefinition windowDefinition window Grammars are defined here.

Execution windowExecution windowGenerated systems can be used here.Relationships between figure elements are preserved.

Page 14: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

14

Defining Rules

Rough Rules can bedefined visually.

Eviss translates theminto textual form.

The user modifies- attributes- actions- constraints

Page 15: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

15

Applications

VSH

calc tree stack STD VSH

GUI Builder HIVISUAL VISPATCH

5

*

3 4

+

Page 16: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

16

Calculation Tree

35

57

*

3 4

+

Calculation TreeCalculation Tree

Page 17: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

17

Stack

a

b

c

a

b

c

Page 18: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

18

State Transition Diagram Editor

Page 19: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

19

VSH (Visual Shell)

Page 20: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

20

GUI Builder

Page 21: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

21

HIVISUAL

[I. Yoshimoto, 1986]

Page 22: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

22

VISPATCH [Harada,1997]

Page 23: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

23

More Application

Recursive Drawing of a Comic Character

Page 24: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

24

Problems with Eviss

Needed to define Extended CMG rules textually.

Difficult to the end users.

Page 25: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

25

Features of Viola

The user can define the rules by direct manipulation, without describing rules in text.

Implemented in Java (J2SE v1.4.1) As a constraint solver, Chorus [Hosobe 20

01] is used.

Page 26: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

26

Features of Viola (2)

No distinction between the definition window and the execution window. We can define the rules and execute the visual system dynamically.

Page 27: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

27

Demo: Network Structure Diagram

Page 28: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

28

Summary

Visual Parser Generators based on Extended CMG are described.

They generate the spatial parsers, if the rules for the visual languages are given.The grammars are based on the extended

CMG. In Viola, the user can define rules and execute

them dynamically.

Page 29: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

29

Future direction: Meta-GUI

Write meta-interpreter of Viola in Violacf. Vispatch

Page 30: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

30

Free Software Packages EVISS is available from

http://www.iplab.cs.tsukuba.ac.jp/

More Info:[email protected]

Page 31: From Eviss to Viola: Visual Parser Generators based  on Extended Constraint Multiset Grammars

31

From Eviss to Viola:Visual Parser Generators based

on Extended Constraint Multiset Grammars

Jiro Tanaka

University of [email protected]