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

Preview:

DESCRIPTION

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

Citation preview

1

From Eviss to Viola:Visual Parser Generators based

on Extended Constraint Multiset Grammars

Jiro Tanaka

University of Tsukubajiro@computer.org

2

Contents

Visual Parsing Visual Parser Generators

EvissViola

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

4

Visual parsing: motivation

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

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.

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

7

Visual Parser Generator:

GrammarExtended CMG (Constraint Multiset Gram

mars)

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

.,...

),(),(::),(

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

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

+

11

Contents

Visual Parsing Visual Parser Generators

EvissViola

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

13

“Eviss” SystemDefinition windowDefinition window Grammars are defined here.

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

14

Defining Rules

Rough Rules can bedefined visually.

Eviss translates theminto textual form.

The user modifies- attributes- actions- constraints

15

Applications

VSH

calc tree stack STD VSH

GUI Builder HIVISUAL VISPATCH

5

*

3 4

+

16

Calculation Tree

35

57

*

3 4

+

Calculation TreeCalculation Tree

17

Stack

a

b

c

a

b

c

18

State Transition Diagram Editor

19

VSH (Visual Shell)

20

GUI Builder

21

HIVISUAL

[I. Yoshimoto, 1986]

22

VISPATCH [Harada,1997]

23

More Application

Recursive Drawing of a Comic Character

24

Problems with Eviss

Needed to define Extended CMG rules textually.

Difficult to the end users.

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.

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.

27

Demo: Network Structure Diagram

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.

29

Future direction: Meta-GUI

Write meta-interpreter of Viola in Violacf. Vispatch

30

Free Software Packages EVISS is available from

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

More Info:jiro@computer.org

31

From Eviss to Viola:Visual Parser Generators based

on Extended Constraint Multiset Grammars

Jiro Tanaka

University of Tsukubajiro@computer.org

Recommended