Issue No. 05 - September (1978 vol. 4)
A.B. Cremers , Informatics Department, University of Dortmund
A preliminary example of program development demonstrates that the control-independent implementation of data types can lead to very inefficient code. The concept of a data space, which emphasizes the interaction between data and control structures, is introduced as a formal model of virtual machines. The model consists of three components: a state space X, an information structure F, and a control component p. Formally, X is a set of objects, F a set of functions with common domain X mapping the states to the value sets of certain data types, and p a partial function X ? X. Two important points of investigation are the characterization of state space structure and the mechanism of implementation. Good state description is characterized by "completeness" and "orthogonality." Either property plays a prominent role for the concept of implementation which, in turn, is formally defined as a mapping from a "virtual" space to a "real" space, via some "macro" space. These notions are illugtrated by means of several examples from the area of programming languages.
programming methodology, Abstract machines, data types, implementation, information structures, operational semantics, procedures
T. Hibbard and A. Cremers, "Formal Modeling of Virtual Machines," in IEEE Transactions on Software Engineering, vol. 4, no. , pp. 426-436, 1978.