Implementation of visual languages using pattern‐based specifications

The implementation of visual languages requires a wide range of conceptual and technical knowledge from issues of user interface design and graphical implementation to aspects of analysis and transformation for languages in general. We present a powerful toolset that incorporates such knowledge. Our toolset generates editors from high‐level specifications. A language is specified by identifying certain patterns in the language structure and selecting a visual representation from a set of precoined solutions. Visual programs are represented by attributed abstract trees. Therefore, further phases of processing visual programs can be generated by state‐of‐the‐art tools for language implementation. We demonstrate that even challenging visual languages can be implemented with reasonably little effort and with rather limited technical knowledge. The approach is suitable for a large variety of visual language styles. Copyright © 2003 John Wiley & Sons, Ltd.

[1]  Sten Minör,et al.  Interacting with Structure-Oriented Editors , 1992, Int. J. Man Mach. Stud..

[2]  Donald A. Norman,et al.  User Centered System Design: New Perspectives on Human-Computer Interaction , 1988 .

[3]  CALUM A.M. GRANT Visual Language Editing Using a Grammar-Based Visual Structure Editor , 1998, J. Vis. Lang. Comput..

[4]  Wayne Citrin,et al.  Requirements for graphical front ends for visual languages , 1993, Proceedings 1993 IEEE Symposium on Visual Languages.

[5]  Jakob Nielsen,et al.  Usability engineering , 1997, The Computer Science and Engineering Handbook.

[6]  Genny Tortora,et al.  Automating Visual Language Generation , 1990, IEEE Trans. Software Eng..

[7]  David H. Akehurst An OO visual language definition approach supporting multiple views , 2000, Proceeding 2000 IEEE International Symposium on Visual Languages.

[8]  Matthias T. Jung,et al.  Ein Generator zur Entwicklung visueller Sprachen , 2000 .

[9]  Mark Minas,et al.  Generating Diagram Editors Providing Free-Hand Editing as well as Syntax-Directed Editing , 2000 .

[10]  Alan Moore,et al.  Graphical User Interface Design and Evaluation: A Practical Process , 1995 .

[11]  Pierre Deransart,et al.  Attribute Grammars: Definitions, Systems and Bibliography , 1988 .

[12]  Kang Zhang,et al.  VisPro: a visual language generation toolset , 1998, Proceedings. 1998 IEEE Symposium on Visual Languages (Cat. No.98TB100254).

[13]  Olof Hagsand,et al.  Generation of visual language-oriented design environments , 1990, J. Vis. Lang. Comput..

[14]  Andy Schürr,et al.  A graph based framework for the implementation of visual environments , 1996, Proceedings 1996 IEEE Symposium on Visual Languages.

[15]  Uwe Kastens Attributed Grammars as a Specification Method , 1991, Attribute Grammars, Applications and Systems.

[16]  Filomena Ferrucci,et al.  Supporting hybrid and hierarchical visual language definition , 1999, Proceedings 1999 IEEE Symposium on Visual Languages.

[17]  C. Petri Kommunikation mit Automaten , 1962 .

[18]  Anthony M. Sloane,et al.  Eli: a complete, flexible compiler construction system , 1992, CACM.

[19]  William M. Waite,et al.  Modularity and reusability in attribute grammars , 1994, Acta Informatica.

[20]  William M. Waite,et al.  An abstract data type for name analysis , 1991, Acta Informatica.

[21]  Wolfgang Müller,et al.  Integrating a constraint solver into a real-time animation environment , 1996, Proceedings 1996 IEEE Symposium on Visual Languages.

[22]  Paul Franchi-Zannettacci Attribute Specifications for Graphical Interface Generation , 1989, IFIP Congress.

[23]  Roswitha Bardohl GENGED: a generic graphical editor for visual languages based on algebraic graph grammars , 1998, Proceedings. 1998 IEEE Symposium on Visual Languages (Cat. No.98TB100254).

[24]  Marc A. de Kruijf Compiler Construction , 1996, Lecture Notes in Computer Science.

[25]  Uwe Kastens,et al.  The Eli System , 1998, CC.

[26]  David Harel,et al.  On visual formalisms , 1988, CACM.

[27]  Michael G Vose,et al.  Laboratory virtual instrument engineering workbench , 1986 .

[28]  B. Shneiderman,et al.  Flowchart techniques for structured programming , 1973, SIGP.

[29]  Jeffrey D. McWhirter,et al.  Escalante: an environment for the rapid construction of visual language applications , 1994, Proceedings of 1994 IEEE Symposium on Visual Languages.

[30]  Uwe Kastens Attribute Grammars in a Compiler Construction Environment , 1991, Attribute Grammars, Applications and Systems.

[31]  Wolfgang Mueller,et al.  Generation of interactive visual environments for direct manipulation of database content , 1999, Proceedings 1999 IEEE Symposium on Visual Languages.

[32]  Kim Marriott,et al.  A Tableau Based Constraint Solving Toolkit for Interactive Graphical Applications , 1998, CP.

[33]  G. M. Vose Labview: laboratory virtual instrument engineering workbench , 1986 .

[34]  Kim Marriott,et al.  Automatic construction of intelligent diagram editors , 1998, UIST '98.

[35]  Uwe Kastens,et al.  A Visual Language to Specify SIM Toolkit Applications , 2002 .

[36]  Kenneth M. Kahn,et al.  Complete visualizations of concurrent programs and their executions , 1990, Proceedings of the 1990 IEEE Workshop on Visual Languages.

[37]  Genny Tortora,et al.  A framework of syntactic models for the implementation of visual languages , 1997, Proceedings. 1997 IEEE Symposium on Visual Languages (Cat. No.97TB100180).

[38]  W GrayRobert,et al.  Eli: a complete, flexible compiler construction system , 1992 .

[39]  Marian Petre,et al.  Usability Analysis of Visual Programming Environments: A 'Cognitive Dimensions' Framework , 1996, J. Vis. Lang. Comput..

[40]  C. L. Zarmer,et al.  Frameworks for interactive, extensible, information-intensive applications , 1992, UIST '92.

[41]  John K. Ousterhout,et al.  Tcl: An Embeddable Command Language , 1989, USENIX Winter.