|
ABSTRACT
There has been a great interest recently in systems that use graphics to aid in the programming, debugging, and understanding of computer programs. The terms “Visual Programming” and “Program Visualization” have been applied to these systems. Also, there has been a renewed interest in using examples to help alleviate the complexity of programming. This technique is called “Programming by Example.” This paper attempts to provide more meaning to these terms by giving precise definitions, and then uses these definitions to classify existing systems into a taxonomy. A number of common unsolved problems with most of these systems are also listed.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
Albizuri-Romero 84
|
|
 |
Attardi 82
|
|
| |
Baecker 68
|
R.M.Baecker. "Experiments in On-Line Graphical Debugging: The Interrogation of Complex Data Structures," (Summary only) First Hawaii International Conference on the System Sciences. Jan. 1968. pp. 128-129.
|
 |
Baecker 75
|
|
| |
Baecker 81
|
Ron Baecker, Sorting out Sorting, 16Imin color, sound film, 25 Ininutes. Dynamics Graphics Project, Computer Systems Research Institute, University of Toronto, Toronto, Ontario, Canada. 1981. Presented at ACM SIG- GRAPH'81. Dallas, TX. Aug. 1981.
|
 |
Baecker 86
|
|
| |
Bauer 78
|
|
| |
Biermann 76a
|
Alan W. Biermann. "Approaches to Automatic Programming," Advances in Computers, Morris Rubinoff and Marshall C. Yovitz, eds. (15) New York: Academic Press, 1976. pp. 1-63.
|
| |
Biermann 76b
|
Alan W. Biermann and Ramachandran Krishnaswamy. "Constructing Programs from Example Computations," IEEE Transactions on Software Engineering. SE- 2(3) Sept. 1976. pp. 141-153.
|
| |
Borning 79
|
Alan Borning. Thinglab--A Constraint-Oriented Simulation Laboratory. Xerox Palo Alto Research Center Technical Report SSL-79-3. July, 1979.
|
 |
Borning 81
|
|
 |
Borning 86
|
|
 |
Brown 84
|
|
| |
Brown 85
|
Gretchen P. Brown, Richard T. Curling, Christopher F. Herot, David A. Kramlich, and Paul Souza. "Program Visualization: Graphical Support for Software Development," IEEE Computer. 18{8) Aug. 1985. pp. 27-35.
|
| |
Christensen 68
|
Carlos Christensen. "An Example of the Manipulationof Directed Graphs in the AMBIT/G Programming Language," in interactive Systems for Experimental Applied Mathematics, MeDin Klerer and Juris Reinfelds, eds. New York: Academic Press, 1968. pp. 423-435.
|
 |
Christensen 71
|
|
| |
Ellis 69
|
T.O. Ellis, J.F. Heafner and W.L. Sibley. The Grail Project: An Experiment in Man-Machine Communication. RAND Report RM-5999-Arpa. 1969.
|
| |
Glinert 84
|
|
| |
Gould 84
|
Laura Gould and William Finzer. Programming by Rehearsal. Xerox Palo Alto Research Center Technical Report SCL-84-1. May, 1984. 133 pages. Excerpted in Byte. 9(6) June, 1984.
|
| |
Grafton 85
|
Robert B. GraRon and Tadao Ichikawa, eds. IEEE Computer, Special Issue on Visual Programming. 18(8) Aug. 1985.
|
| |
Haibt 59
|
Lois M. Haibt. "A Program to Draw Multi-Level Flow Charts," Proceedings of the Western Joint Computer Conference. San Francisco, CA. 15 Mar. 3-5, 1959. pp. 131-137.
|
| |
Halbert 81
|
Daniel C. Halbert. An Example of Programming by Example. Masters of Science Thesis. Computer Science Division, Dept. of EE&CS, University of California, Berkeley and Xerox Corporation Office Products Division, Palo Alto, CA. June, 1981.
|
| |
Halbert 84
|
|
| |
Jacob 85
|
Robert J.K. Jacob. "A State Transition Diagram Language for Visual Programming," IEEE Computer. 18(8) Aug. 1985. pp. 51-59.
|
| |
Lieberman 82
|
Henry Lieberman. "Constructing Graphical User Interfaces by Example," Graphics Interface'82, Toronto, Ont. Mar. 17-21, 1982. pp. 295-302.
|
| |
London 85
|
Ralph L. London and Robert A. Druisberg. "Animating Programs in Smalltalk," {EEE Computer. 18(8) Aug. 1985. pp. 61-71.
|
| |
Moriconi 85
|
Mark Moriconi and Dwight F. Hare. "Visualizing Program Designs Through PegaSys," IEEE Computer. 18(8) Aug. 1985. pp. 72-85.
|
| |
Myers 80
|
Brad A. Myers. Displaying Data Structures for Interacff, ve Debugging. Xerox Palo Alto Research Center Technical Report CSL-80-7. June, 1980.
|
 |
Myers 83
|
|
 |
Nassi 73
|
|
| |
Oxford 83
|
Dictionary of Computing. Oxford: Oxford University Press, 1983.
|
| |
Pietrzykowski 83
|
Thomas Pietrzykowski, Stanislaw Matwin, and Tomasz Muldner. "The Programming Language PRO- GRAPH: Yet Another Application of Graphics," Graphics Interface'83, Edmonton, Alberta. May 9-13, 1983. pp. 143- 145.
|
| |
Pietrzykowski 84
|
T. Pietrzykowski and S. Matwin. PRO- GRAPH: A Preliminary Report. University of Ottawa Technical Report TR-84-07. April, 1984.
|
| |
Pong 83
|
M.C. Pong and N. Ng. "Pigs--A System for Programming with Interactive Graphical Support," Software-- Practice and Experience. 13(9) Sept. 1983. pp. 847-855.
|
| |
Raeder 85
|
Georg Raeder. "A Survey of Current Graphical Programming Techniques," IEEE Computer. 18(8) Aug. 1985. pp. 11-25.
|
| |
Rovner 69
|
P.D. Rovner and D.A. Henderson, Jr. "On the Implementation of AMBIT/G: A Graphical Programming Language," Proceedings of the International Joint Conference on Artificial Intelligence. Washington, D.C. May 7-9, 1969, pp. 9-20.
|
| |
Shaw 75
|
David E. Shaw, William R. Swartout, and C. Cordell Green. "Inferring Lisp Programs from Examples," Fourth International Joint Conference on Artificial Intelligence. Tbilisi, USSR. Sept. 3-8, 1975. 1 pp. 260-267.
|
| |
Shneiderman 83
|
Ben Shneiderman. "Direct Manipulation: A Step Beyond Programming Languages," IEEE Computer. 16(8) Aug. 1983. pp. 57-69.
|
| |
Shu 85
|
Nan C. Shu. ~'FORMAL: A Forms-Oriented Visual- Directed Application Development System," IEEE Computer. 18(8) Aug. 1985. pp. 38-49.
|
| |
Smith 77
|
David C. Smith. Pygmalion: A Computer Program to Model and Stimulate Creative Thought. Basel, Stuttgart: Birkhauser, 1977.
|
| |
Smith 82
|
David C. Smith, Charles Irby, Ralph Kimball, Bill Verplank, and Erik Harslem. "Designing the Star User Interface," Byte Magazine. April 1982. pp. 242-282.
|
| |
Sutherland 63
|
Ivan E. Sutherland. "SketchPad: A Man- Machine Graphical Communication System," AFIPS Spring Joint Computer Conference. 23 1963. pp. 329-346.
|
| |
Sutherland 66
|
William R. Sutherland. On.line Graphical Specification of Computer Procedures. MIT PhD Thesis. Lincoln Labs Report TR-405. 1966.
|
| |
Williams 84
|
Gregg Williams. '~The Apple Macintosh Computer," Byte Magazine. 9(2) February 1984. pp. 30-54.
|
 |
Zloof 77
|
|
| |
Zloof 81
|
Moshe M. Zloof. "QBE/OBE: A Language for Office and Business Automation," IEEE Computer. 14(5) May, 1981. pp. 13-22.
|
CITED BY 45
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Robert P. Taylor , Nancy Cunniff , Minh Uchiyama, Learning, research, and the graphical representation of programming, Proceedings of 1986 ACM Fall joint computer conference, p.56-63, November 1986, Dallas, Texas, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
K. D. Baker , L. J. Ball , P. F. Culverhouse , Dennis J. Evans , A. P. Jagodzinski, A process oriented approach to an intelligent design aid, Proceedings of the 2nd international conference on Industrial and engineering applications of artificial intelligence and expert systems, p.479-485, June 1989, Tullahoma, Tennessee, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
B. J. Reiser , P. Friedmann , J. Gevins , D. Y. Kimberg , M. Ranney, A graphical programming language interface for an intelligent LISP tutor, Proceedings of the SIGCHI conference on Human factors in computing systems, p.39-44, May 15-19, 1988, Washington, D.C., United States
|
|
|
|
|
|
|
|
|
|
|
B. A. Myers , B. V. Zanden , R. B. Dannenberg, Creating graphical interactive application objects by demonstration, Proceedings of the 2nd annual ACM SIGGRAPH symposium on User interface software and technology, p.95-104, November 13-15, 1989, Williamsburg, Virginia, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Allan MacLean , Kathleen Carter , Lennart Lövstrand , Thomas Moran, User-tailorable systems: pressing the issues with buttons, Proceedings of the SIGCHI conference on Human factors in computing systems: Empowering people, p.175-182, April 01-05, 1990, Seattle, Washington, United States
|
|
Christian Collberg , Stephen Kobourov , Jasvir Nagra , Jacob Pitts , Kevin Wampler, A system for graph-based visualization of the evolution of software, Proceedings of the 2003 ACM symposium on Software visualization, June 11-13, 2003, San Diego, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE conference on Design automation
Gwo-Dong Chen
, Daniel D. Gajski
|