A Graph-Based Operational Semantics of OO Programs

  • Authors:
  • Wei Ke;Zhiming Liu;Shuling Wang;Liang Zhao

  • Affiliations:
  • School of Computer Science and Engineering, Beihang University, Beijing, China and Macao Polytechnic Institute, Macao;International Institute for Software Technology, United Nations University, Macao;International Institute for Software Technology, United Nations University, Macao;International Institute for Software Technology, United Nations University, Macao

  • Venue:
  • ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a mathematical model of class graphs, object graphs and state graphs which naturally capture the essential oo features. A small-step operational semantics of oo programs is defined in the style of classical structural operational semantics, in which an execution step of a command is defined as a transition from one state graph to another obtained by simple operations on graphs. To validate this semantics, we give it an implementation in Java. This implementation can also be used for simulation and validation of oo programs, with the visualization of state graph transitions during the execution. A distinct feature of this semantics is location or address independent. Properties of objects and oo programs can be described as properties of graphs in terms of relations of navigation paths (or attribute strings).