2.9"world"

This teachpack provides a datatype for images and a framework for interactive
animations. It is partially reflected in the ACL2 logic, but some of the
primitives cannot be fully reasoned about or executed due by ACL2 to their
imperative and platform-specific nature.

2.9.1Animations

These forms produce an interactive animation that reacts to events. The user
must define a World datatype, representing the state of an animation, and
functions to update the World in response to events such as keystrokes or mouse
buttons. From this, the teachpack can generate an interactive animation.

Events are based on two extra datatypes. A KeyEvent represents a keystroke, and
may be either a character or a symbol such as 'left, 'right,
'up, or 'down. A MouseEvent represents an action of the mouse
cursor, and may be 'button-down, 'button-up, 'drag,
'move, 'enter, or 'leave.