Logic of Change: Semantics of Object Systems with Active Relations

作者:I. Bider, M. Khomyakov, E. Pushchinsky

摘要

In traditional approaches to object-oriented programming, objects are “active”, while relations between them are “passive”. The activeness of an object reveals itself when the object invokes a method (function) as a reaction to a message from another object (or itself). While this model is suitable for some tasks, like arranging interactions between windows, widgets and the end-user in a typical GUI environment, it's not appropriate for others. Business applications development is one of the examples. In this domain, relations between conceptual objects are at least as important as objects themselves and the more appropriate model for this field would be the one where relations are “active” while objects are “passive”. A version of such a model is presented in the paper. The model considers a system as consisting of a set of objects, a code of laws, and a set of connectors, each connector hanging on a group of objects that must obey a certain law. The formal logical semantics of this model is presented as a way of analyzing the set of all possible trajectories of all possible systems. The analysis allows to differentiate valid trajectories from invalid ones. The procedural semantics is presented as a state machine that given an initial state, generates all possible trajectories that can be derived from this state. This generator can be considered as a model of a connectors scheduler that allows various degrees of parallelism, from sequential execution to the maxim possible parallelism. In conclusion, a programming language that could be appropriate for the proposed computer environment is discussed, and the problems of applying the model to the business domain are outlined.

论文关键词:formal semantics, persistent action, law-based programming, business process, process management

论文评审过程:

论文官网地址:https://doi.org/10.1023/A:1008713216625