Boxer was a central influence in the design of LiveWorld. As explained in section 4.2.3, LiveWorld retains Boxer's emphasis on the concrete, its use of hierarchical nesting to hide detail and provide a uniform medium, and its use of a single structure to perform a multiplicity of computational and interface tasks. LiveWorld extends Boxer's ideas by making Boxes into objects with inheritance relationships and a message-passing language, and by providing a direct manipulation interface. Boxer's interface is based around a generalization of text editing. While the benefits of LiveWorld's object-orientation and direct manipulation are many, there is at least one advantage to Boxer's approach: the text-based model provides for the ordering of the parts within a box, making it easier to express constructs like lists and arrays.
Boxer includes a port mechanism that allows references across the box hierarchy. A port is rather like an alias for a box that can be placed in a remote part of the system, and in most respects functions like the original box. The port displays the value in the original box, and setting the contents of the port changes that of the original box. Ports are an alternative to referring to remote boxes by names or by complicated access paths. For the most part a facility like this has not been needed in LiveWorld. However, ports can be mimicked in LiveWorld using the prototype relationship. A port is just a spinoff with a specialized :set method that changes the value of the original frame rather than the local value. It's somewhat more difficult, thought not impossible, to handle the other operations on frames in a port-like fashion, such as adding annotations.
Logo, a direct ancestor of Boxer, was also influential in many ways, but primarily at a conceptual rather than design level (see sections 1.3.3 and 3.3.3). The turtle, of course, derives from Logo.
Self (Ungar and Smith 1987) is the prototypical prototype-based object-oriented language. Its chief feature is an extremely simple object and inheritance model, which makes it easy to teach and implement. From the standpoint of object-oriented programming, LiveWorld's (really mostly Framer's) major contributions over and above what Self provides are in providing slots that are first-class objects, and dynamic inheritance. Another difference is that in Self, an object generally does not inherit values from its prototype, but from a separate object (called the parent). While this has certain advantages, Framer's method is in many respects simpler to understand, and it is easier to represent the inheritance relationships in a dynamic graphic environment like LiveWorld.
Self has an exploratory graphic interface (Chang and Ungar 1993) which has much in common with LiveWorld's interface. Both systems emphasize animation, but use it in very different ways. The Self interface animates its object representations (akin to LiveWorld's boxes) in a fashion designed to make them seem real to the user (i.e., when a new object is made, it does not simply appear, but swoops in from the side of the screen), but this animation is outside the realm of the user's control. LiveWorld is more concerned with allowing the user to control the animation of graphic objects, leaving the more abstract, structural representation of objects unanimated.
ARK, or the Alternate Reality Kit (Smith 1987), is another environment with goals similar to that of LiveWorld. In this case the commonality is in providing a lively, reactive feel, and in integrating graphic objects with computational objects. Other shared properties include prototypes (ARK's prototypes work more like those of Self), step methods to drive concurrent objects, and a special limbo state (called MetaReality in ARK) for objects in a state of transition. Both ARK and Rehearsal World, as well as many other visual environments, rely on a separation of user levels. Components are built by sophisticated users, generally outside of the visual environment, while more naive users are allowed to connect these components together graphically but not to open them up or modify them. LiveWorld, on the other hand, tries hard to make every object openable and accessible.
The Rehearsal World system (Finzer and Gould 1984) explored the use of theatrical metaphors as an interface to an object-oriented programming environment. Rehearsal world presents objects as "players" which come in "troupes" and can be moved onto "stages", objects are controlled by "cues", and putting objects through their paces is, of course, done via rehearsal, which in practice is a weak form of programming-by-demonstration (Cypher 1993) in which objects can record user actions and play them back on command.
LiveWorld borrows from Rehearsal World the theatrical metaphor, and the idea of providing a large set of existing players (a troupe) which users can use as components and starting points for further development. The purpose and feel of the two systems also have many points of commonality: both aim to provide a friendly and dynamic world where programming and direct manipulation are integrated. The main differences are LiveWorld's unusual object system and its emphasis on concurrent reactive objects. Rehearsal World's programs, in contrast, are generally "button-driven", that is, driven directly by user actions.
LiveWorld also incorporated a form of "rehearsal"-based programming, where objects could record a sequence of message sends for later playback. This facility was not developed very far, however.
ágora (Marchini and Melgarejo 1994) is a platform for modeling distributed simulations based on graphic objects, concurrent iterated programs, and communication between them. One of ágora's more innovative ideas is the notion of a communication medium, which provides a metaphor for broadcast style of inter-actor communication. In this model, any actor can connect itself to one or several communication media. Objects communicate with each other by sending messages to a medium which then rebroadcasts it to the other objects present.
A medium can correspond to various sensory modalities such as vision or smell. The various media can have different behaviors and properties that determine the duration and disposition of messages. Mediums thus take the place of LiveWorld's sensors. In LiveWorld, sensors compute values obtained directly from the world. The sensors themselves are trusted to look only at slots that make sense given the sensor's designed-in locality. Having media objects encapsulates this constraint into a separate object. By reifying the idea of a medium, ágora presents an alternative to the traditional one-to-one image of message passing and provides a conceptual basis for thinking about object interaction in a variety of different circumstances.
IntelligentPad (Tanaka 1993) is a "media architecture" visually quite similar to LiveWorld. The basic unit is the pad, graphic objects which can be given various appearances and behaviors and pasted within other pads to form hierarchical structures. Pads when pasted establish message-passing links between them. Pads serve as displays, buttons, containers, and can represent complex simulation objects like springs and gears.
While the pad environment allows end users to manipulate and combine given sets of pads, it does not support full programming capabilities. Users cannot modify the behavior of the basic pads nor create new kinds of objects. In this respect its design philosophy resembles that of Agentsheets (see section 6.2.2).