GVL: Visual specification of graphical output

Abstract The conceptual view model of output is based on the complete separation of the output specification of a program from the program itself, and the use of implicit synchronization to allow the data state of the program to be continuously mapped to a display view. An output specification language called GVL is used to specify the mapping from the program's data state to the display. GVL is a functional language explicitly designed for specifying output. Building from a small number of basic primitives, it provides sufficient power to describe complex graphical output. Examples shown in the paper include GVL specifications for linked list diagrams, bar charts and an address card file. In keeping with its intended application, GVL is also a visual language in which the user draws output specifications directly on the display. It is shown how problems often associated with imperative graphical languages are avoided by using the functional paradigm. A prototype implementation of GVL was used to produce all examples of graphical output in the paper.

[1]  Robert Sedgewick,et al.  Techniques for Algorithm Animation , 1985, IEEE Software.

[2]  Dan R. Olsen,et al.  Input/output linkage in a user interface management system , 1985, SIGGRAPH '85.

[3]  Ephraim P. Glinert,et al.  Pict: An Interactive Graphical Programming Environment , 1984, Computer.

[4]  Brad A. Myers INCENSE: A system for displaying data structures , 1983, SIGGRAPH.

[5]  M. Shaw An input-output model of interactive systems , 1986, CHI '86.

[6]  Brad A. Myers,et al.  Creating user interfaces by demonstration , 1988 .

[7]  M. H. Brown Perspectives on algorithm animation , 1988, CHI '88.

[8]  Gruia-Catalin Roman,et al.  A declarative approach to visualizing concurrent computations , 1989, Computer.

[9]  John Dewey Jones Three unconventional representations of the Mandelbrot set , 1990, Comput. Graph..

[10]  N. Cunniff,et al.  Does programming language affect the type of conceptual bugs in beginners' programs? A comparison of FPL and Pascal , 1986, CHI '86.

[11]  Mary Shaw,et al.  Descartes: A programming-language approach to interactive display interfaces , 1983, ACM SIGPLAN Notices.

[12]  E KrasnerGlenn,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[13]  Takao Shimomura,et al.  VIPS: A Visual Debugger , 1987, IEEE Software.

[14]  Stephen Travis Pope,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[15]  M. May,et al.  Computer graphics and layout design in documentation processes , 1990, Comput. Graph..

[16]  A. Borning,et al.  Defining constraints graphically , 1986, CHI '86.

[17]  Richard C. Holt,et al.  The Turing programming language , 1988, CACM.

[18]  Simon L. Peyton Jones,et al.  The Implementation of Functional Programming Languages , 1987 .

[19]  Mary Shaw,et al.  Descartes: A programming-language approach to interactive display interfaces , 1983, SIGPLAN '83.

[20]  Takayuki Dan Kimura,et al.  A Visual Language for Keyboardless Programming , 1986 .

[21]  Stan Matwin,et al.  Prograph: A Preliminary Report , 1985, Comput. Lang..

[22]  Daniel G. Bobrow,et al.  Integrating Access-Oriented Programming into a Multiparadigm Environment , 1986, IEEE Software.

[23]  James R. Cordy,et al.  Conceptual views of data structures as a model of output in programming languages , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track.