Information stored in books is static. By moving to a system in which information is stored on computers, we enable that information to become dynamic. Information stored on a computer can react; it is interactive. Traditional computer systems represent data as external to the programs that manipulate the data. This severely limits the interactive potential of the information; adding a new type of behavior requires adding a new program to the system. Much effort has been spent in making the installation of new programs easy, but it remains as a step which must be explicitly taken by the user.
By allowing behavior to accompany information, the system automatically extends itself whenever it encounters a new form of information which requires a novel behavior. A new behavior can spread with the copying of data, without explicit intervention on the part of the receiver of the information.
Information and resources which are available to a user can be voluntarily shared with another user. In the absence of any such shared arrangement information and resources remain private.
Although the Secure Object Format does not specify a high level language which generates the object code, the format does place certain constraints on such a language. Working within those constraints, it must be possible to create a language which is familiar enough to a large number of programmers to be readily adopted. Currently, that means that the language must be related to C, C++, and Java.
It is designed so that it won't become obsolete in the near future. It is adaptable to operate on new hardware irrespective of such technical specifications as word size, address space, degree of parallelism, or specifics of input, output, and storage devices.
Note that the code optomizer and compiler must be part of the TCB.