Title :
Design, construction, and application of a generic visual language generation environment
Author :
Zhang, Kang ; Zhang, Da-Qian ; Cao, Jiannong
Author_Institution :
Dept. of Comput. Sci., Texas Univ., Dallas, TX, USA
fDate :
4/1/2001 12:00:00 AM
Abstract :
The implementation of visual programming languages (VPLs) and their supporting environments is time-consuming and tedious. To ease the task, researchers have developed some high-level tools to reduce the development effort. None of these tools, however, can be easily used to create a complete visual language in a seamless way as the lex/yacc tools do for textual language constructions. This paper presents the design, construction and application of a generic visual language generation environment, called VisPro. The VisPro design model improves the conventional model-view-controller framework in that its functional modules are decoupled to allow independent development and integration. The VisPro environment consists of a set of visual programming tools. Using VisPro, the process of VPL construction can be divided into two steps: lexicon definition and grammar specification. The former step defines visual objects and a visual editor, and the latter step provides language grammars with graph rewriting rules. The compiler for the VPL is automatically created according to the grammar specification. A target VPL is generated as a programming environment which contains the compiler and the visual editor. The paper demonstrates how VisPro is used by building a simple visual language and a more complex visual modeling language for distributed programming
Keywords :
compiler generators; distributed programming; graph grammars; programming environments; rewriting systems; subroutines; visual languages; VisPro; compiler construction; decoupled functional modules; design model; distributed programming; generic visual language generation environment; grammar specification; graph rewriting rules; independent module development; language grammars; lexicon definition; model-view-controller framework; module integration; programming environment; visual editor; visual modeling language; visual objects; visual programming language construction; visual programming tools; Application software; Buildings; Computer languages; Education; Graphical user interfaces; Productivity; Program processors; Programming environments; Software systems; User interfaces;
Journal_Title :
Software Engineering, IEEE Transactions on