Taxonomies of visual programming and program visualization

There has been great interest recently in systems that use graphics to aid in the programming, debugging, and understanding of computer systems. The terms 'Visual Programming' and 'Program Visualization' have been applied to these systems. This paper attempts to provide more meaning to these terms by giving precise definitions, and then surveys a number of systems that can be classified as providing Visual Programming or Program Visualization. These systems are organized by classifying them into three different taxonomies.

[1]  Michael Anthony Vincent Bauer,et al.  A basis for the acquisition of procedures. , 1978 .

[2]  Alan W. Biermann,et al.  Approaches to Automatic Programming , 1976, Adv. Comput..

[3]  Brad A. Myers,et al.  User-interface tools: introduction and survey , 1989, IEEE Software.

[4]  Brad A. Myers,et al.  Creating Interaction Techniques by Demonstration , 1987, IEEE Computer Graphics and Applications.

[5]  Robert Sedgewick,et al.  A system for algorithm animation , 1984, SIGGRAPH.

[6]  David E. Shaw,et al.  Inferring LISP Programs From Examples , 1975, IJCAI.

[7]  Ben Shneiderman,et al.  Direct Manipulation: A Step Beyond Programming Languages , 1983, Computer.

[8]  John T. Stasko Tango: A Framework and System for Algorithm Animation , 1990, Computer.

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

[10]  W. R. Sutherland,et al.  The on-line graphical specification of computer procedures , 1966 .

[11]  Christopher F. Herot,et al.  Program Visualization: Graphics Support for Software Development , 1983, 20th Design Automation Conference Proceedings.

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

[13]  Moshé M. Zloof QBE/OBE: A Language for Office and Business Automation , 1981, Computer.

[14]  David Canfield Smith,et al.  Pygmalion: A COMPUTER PROGRAM TO Model and Stimulate Creative Thought , 1975 .

[15]  Mark Moriconi,et al.  Visualizing Program Designs Through PegaSys , 1985, Computer.

[16]  Lois M. Haibt A program to draw multilevel flow charts , 1959, IRE-AIEE-ACM '59 (Western).

[17]  Brian W. Kernighan,et al.  A system for algorithm animation tutorial and user manual , 1990 .

[18]  Jakob Gonczarowski,et al.  A (Formal) Model for (Iconic) Programming Environments , 1987 .

[19]  THE HAGUE-THE NETHERLANDS , 2022 .

[20]  Robert Duisberg,et al.  Animating Programs Using Smalltalk , 1985, Computer.

[21]  M. C. Pong,et al.  PIGS—A system for programming with interactive graphical support , 1983, Softw. Pract. Exp..

[22]  Alan Borning,et al.  ThingLab: a constraint-oriented simulation laboratory , 1979 .

[23]  Marc H. Brown,et al.  Exploring algorithms using Balsa-II , 1988, Computer.

[24]  A. Marcus,et al.  Design principles for the enhanced presentation of computer program source text , 1986, CHI '86.

[25]  Carlos Christensen An introduction to AMBIT/L, a diagrammatic language for list processing , 1971, SYMSAC '71.

[26]  Masafumi Yamashita,et al.  VISUAL USER-INTERFACE OF A PROGRAMMING SYSTEM MOPS**2. , 1986 .

[27]  Nan C. Shu Formal: A Forms-Oriented, Visual-Directed Application Development System , 1985, Computer.

[28]  Paul Berg Proceedings of the 1986 International Computer Music Conference hosted by Royal Conservatory, the Hague, Netherlands , 1986 .

[29]  David S. Johnson,et al.  The NP-Completeness Column: An Ongoing Guide , 1982, J. Algorithms.

[30]  Eric Harslem,et al.  Designing the STAR User Interface , 1987, ECICS.

[31]  T. O. Ellis,et al.  THE GRAIL PROJECT: AN EXPERIMENT IN MAN-MACHINE COMMUNICATIONS , 1969 .

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

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

[34]  Marc Eisenstadt,et al.  The Transparent Prolog Machine (TPM): An Execution Model and Graphical Debugger for Logic Programming , 1988, J. Log. Program..

[35]  Pierre D. Wellner,et al.  Statemaster: A UIMS based on statecharts for prototyping and target implementation , 1989, CHI '89.

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

[37]  E. P. Glinert,et al.  Out of Flatland: towards 3-D visual programming , 1987, FJCC.

[38]  Brad A. Myers,et al.  Automatic data visualization for novice Pascal programmers , 1988, [Proceedings] 1988 IEEE Workshop on Visual Languages.

[39]  S. K. Chang,et al.  A Visual Language Compiler , 1987, IEEE Trans. Software Eng..

[40]  Gary M. Olson,et al.  Can principles of cognition lower the barriers to programming? in empirical studies of programmers: , 1987 .

[41]  Ivan E. Sutherland,et al.  Sketchpad a Man-Machine Graphical Communication System , 1899, Outstanding Dissertations in the Computer Sciences.

[42]  Joel McCormack,et al.  An overview of the X toolkit , 1988, UIST '88.

[43]  Robert J. K. Jacob,et al.  A State Transition Diagram Language for Visual Programming , 1985, Computer.

[44]  Alan Borning,et al.  The Programming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory , 1981, TOPL.

[45]  Robert Duisberg Visual Programming of Program Visualizations , 1990 .

[46]  Miren Begoña Albizuri-Romero GRASE: a graphical syntax-directed editor for structured programming , 1984, SIGP.

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

[48]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

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

[50]  Lawrence M. Fagan,et al.  Graphical specification of procedural knowledge for an expert system , 1987 .

[51]  Ricky Yeung MPL-a graphical programming environment for matrix processing based on logic and constraints , 1988, [Proceedings] 1988 IEEE Workshop on Visual Languages.

[52]  Brad Allen Myers,et al.  Displaying data structures for interactive debugging , 1980 .

[53]  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.

[54]  B. A. Myers,et al.  Visual programming, programming by example, and program visualization: a taxonomy , 1986, CHI '86.

[55]  David N. Smith,et al.  Visual programming in the interface construction , 1988, [Proceedings] 1988 IEEE Workshop on Visual Languages.

[56]  Ron Baecker Two systems which produce animated representations of the execution of computer programs , 1975, SIGCSE '75.

[57]  S. Peter de Jong,et al.  The System for Business Automation (SBA): Programming language , 1976, Commun. ACM.

[58]  Kent L. Beck,et al.  A diagram for object-oriented programs , 1986, OOPSLA 1986.

[59]  Carlos Christensen An Example of the Manipulation of Directed Graphs in the AMBIT/G Programming Language , 1968 .

[60]  Daniel C. Halbert,et al.  Programming by Example , 2010, Encyclopedia of Machine Learning.

[61]  Robert Nix,et al.  Editing by example , 1985, POPL '84.