Animation provides a rich environment for actively exploring algorithms. Multiple, dynamic, graphical displays of an algorithm reveal properties that might otherwise be difficult to comprehend or even remain unnoticed. This exciting new approach to the study of algorithms is taken up by Marc Brown in Algorithm Animation.
Brown first provides a thorough and informative history of the topic, and then describes the development of a system for creating and interacting with such animations. The system incorporates many new insights and ideas about interactive computing, and provides paradigms that could be applied in a number of other contexts.
Algorithm Animation makes a number of original and useful contributions: it describes models for programmers creating animations, for users interacting with the animations, for "script authors" creating and editing dynamic documents, and for "script viewers" replaying and interacting with the dynamic documents.
Two primary applications of an algorithm animation environment are research in algorithm design and analysis, and instruction in computer science. Courses dealing with algorithms and data structures, such as compilers, graphics, algorithms, and programming are particularly well-suited. Other applications include performance tuning, program development, and technical drawings of data structures.
Systems for algorithm animation can be realized with current hardware—exploiting such characteristics of personal workstations as high-resolution displays, powerful dedicated processors, and large amounts of real and virtual memory—and can take advantage of a number of features expected to become common in the future, such as color, sound, and parallel processors.
Algorithm Animation is a 1987 ACM Distinguished Dissertation. It grew out of the Electronic Classroom project at Brown University where Marc H. Brown received his doctorate. He is currently a Principal Software Engineer at the Digital Equipment Corporation Systems Research Center in Palo Alto.