1 / 20

A Visual Programming Environment Based on Graph Grammars and Tidy Graph Drawing

A Visual Programming Environment Based on Graph Grammars and Tidy Graph Drawing. Y. Adachi, Y. Miyadera, K. Sugita K. Tsuchida and T. Yaku. Contents. * Introduction : Purpose, Characteristics and Related Projects * Hichart Tree Structured Diagram (TSD) (1) Characteristics,

santos
Télécharger la présentation

A Visual Programming Environment Based on Graph Grammars and Tidy Graph Drawing

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. A Visual Programming Environment Based on Graph Grammars and Tidy Graph Drawing Y. Adachi, Y. Miyadera, K. Sugita K. Tsuchida and T. Yaku

  2. Contents * Introduction : Purpose, Characteristics and Related Projects * Hichart Tree Structured Diagram (TSD) (1) Characteristics, (2) Attribute Graph Grammar * Hichart TSD Processing System (1) Translator (HiTRANS), (2) Editor (HiED) * Hichart Tidy Drawing Algorithm (HiTD) * Conclusion

  3. Purpose and Characteristics • Motivation : * Extension of Application Fields of Visualization. * Need of Theoretical Background for Them. (1) Constructing Automated Processing System (2) Studying Drawing Algorithm. • Target : Visualization of Programs. • Characteristics : (1) Using Tree Structured Diagram (TSD) (2) Applying Attribute Graph Grammar(AGG)

  4. Related Projects, System Components • Related Projects : (1) IPSEN-PROGRESS targets program semantics, (2) PLAN2D targets nested graphs, (3) DiaGen, (4) GraphEd target general graphs. • Components of Our System (1) Syntactical Editor (HiED), (2) Translator targeting Pascal/C/DXL (HiTRANS), (3) TSD Tidy Drawing Algorithms.

  5. Fig. 1 Components of the System

  6. Fig. 2 Example Hichart TSD

  7. 2.1 Characteristics of Hichart TSD • is a planary Graph. • shows both datastructures and controlflow simultaneously. • is satisfying some graphicalconstraints. (e.g. (a) hierarchical alignment, (b) uniform gap between cells.)

  8. 2.2 Attribute Graph Grammar Used for Constructing This System • AGG : (GGu, A, F) * GGu : underlyingcontext-freegraphgrammar. * A : set of attributes ( set of numerical values and functions.) * F : set of semanticrules ( set of relations among attributes)

  9. Table 1 Attributes of HiAGG

  10. Table 2 Example of Semantic Rules

  11. 3. HiTRANS : Translator of TSD • Components an Features of Translators (1) X2H : Pascal/C/DXL to Hichart translator. input : Pascal/C/DXL source code, output : Hichart internal code and TSD. (2) H2X : Hichart to Pascal/C/DXL translator. input : Hichart internal code, output : Pascal/C/DXL program code. Rem. Hichart internal code is a text file.

  12. Main Phases of H2X Parser ; input : a Hichart internal code as input, output : a derivation tree for TSD. Attribute-evaluator(A); input : a derivation tree, evaluation : attributes about cell size, type, inside cells. Attribute-evaluator(B); input : a derivation tree, evaluation : attributes about drawing condition among cells. Code-generator: generates program source codes.

  13. Fig. 3 Parsing of a TSD

  14. 4 HiED:TSD Editor • Feature (a) Editing Commands (1) Generation, (2) Insertion, (3) Deletion. (b) Characteristics * Generation of Grammatically Correct TSDs. • Method * Providing of Editing Command Based on the ProductionRules of the HiAGG.

  15. 5 HiTD:Drawing Algorithm of TSD HiTD : a program flowchart processing system that automatically generates tidy Hichart TSD using the theory of “tidy drawing problem”.

  16. Constraints of Layout • Constraints: (B1) planarity condition, (B2,3) hierarchyalignment condition, (B4) balancing condition of a sub-tree, (B5) isomorphism for sub-trees, (B6(k)) overlapping condition w.r.t a par. k, (B7) other overlapping condition.

  17. Conditions and Algorithms of Drawing • Conditions E0 = B1, B2,3, B4, B5, B6(0), E1 = B1, B2,3, B4, B5;E2 = B1, B2,3, B4, E3(k) = B1, B2,3, B4, B5, B6(k), B7 E4 = B1, B2,3, B4, B5, B7 • Algorithms HiTD-Proc : procedural algorithm HiTD-Cnst : constraint based algorithm HiTD-Agg : AGG based algorithm

  18. Fig. 6 Structure of Hichart Drawing

  19. Conclusion • Development of a Visual Programming Environment Based on Graph Grammar. • Definition of Complete AGG for Pascal/C/ DXL. • DevelopmentofaSyntactical Programming TSD Processing. (1) HiED, (2) HiTRANS, (3) HiTD • Implementation of a TSD Processing System Based on This AGG.

More Related