Annotating objects for transport to other worlds

David Ungar
1995 SIGPLAN notices  
In Self 4.0, people write programs by directly constructing webs of objects in a larger world of objects. But in order to save or share these programs, the objects must be moved to other worlds. However, a concrete, directly constructed program is incomplete, in particular missing five items of information: which module to use, whether to transport an actual value or a counterfactual initial value, whether to create a new object in the new world or to refer to an existing one, whether an object
more » ... is immutable with respect to transportation, and whether an object should be created by a low-level, concrete expression or an abstract, type-specific expression. In Self 4.0, the programmer records this extra information in annotations and attributes. Any system that saves directly constructed programs will have to supply this missing information somehow. hides the information needed to describe objects' copying is by permission of ACM, inc. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission formats, and why the user interface supports and/or a fee. hyperdirect manipulation, That is also why a Self OOPSLA '95 Austin, TX, USA 0 1995 ACM 0-89791-703~0/95/0010...$3.50
doi:10.1145/217839.217845 fatcat:vtdko5veljcm7kcdz7dssxzvba