|
|
1.1 root 1:
2: anim -- Algorithm Animation
3:
4: Jon Bentley (research!jlb)
5: Brian Kernighan (research!bwk)
6:
7:
8: A program or an algorithm can be animated by a movie that
9: graphically represents its dynamic execution. For instance,
10: a memory allocator might be animated by lines that appear
11: when memory is allocated and disappear when it is freed; a
12: sort might be animated by a randomly scrambled sequence of
13: lines being permuted into order. Such animations are useful
14: for debugging programs, for developing new programs, and for
15: communicating information about how programs work.
16:
17: The anim program provides a basic system for algorithm
18: animation: the output is crude, but the system is easy to
19: use; novice users can animate a program in a couple of
20: hours. The system currently produces movies on Teletype 5620
21: and 630 terminals and workstations running X11, and also
22: renders movies into ``stills'' that can be included in troff
23: documents.
24:
25: An animation is normally produced by adding print statements
26: to a program. Each statement requests the drawing or erasing
27: of some piece of the animation. Objects may be lines, boxes,
28: circles, or text, positioned arbitrarily. Anim scales
29: coordinates so that the disaply always fits the screen. The
30: display may contain multiple independent views that depict
31: different aspects of interest; these views are completely
32: independent of each other and are scaled separately.
33:
34: When anim is used interactively, the viewer can control the
35: speed of display, proceed forward or backward through time,
36: and change the screen layout to emphasize certain views. It
37: is also possible to mark interesting points in time and step
38: from event to event interactively.
39:
40: When anim is used to produce stills, a simple language
41: permits the selection and positioning of arbitrary
42: collections of interesting frames and views.
43:
44: The system is described in detail in "A System for Algorithm
45: Animation -- Tutorial and User Manual," Bell Labs Computing
46: Science Tech Report #132, January, 1987.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.