We have applied them as a basis for interactive processes and data sharing. Taking a slightly different point of view one can regard state transition systems also as objects of the object-oriented paradigm. In this view one can construct objects from objects in an orthogonal way, and assign a functional, operational semantics to object structures. As an application, we demonstrate how we can extend graphical user interface elements with local state, and obtain interactive processes and data sharing as a special case of structuring objects. All systems presented in this thesis are polymorphic and type-safe.
Polymorphism allows free choice of the type of states, messages, and object data.
We have applied the strong type system of Clean to obtain a type-safe system. The message passing system is type-safe, but cannot be typed statically in the type system. To construct well-typed interpretation functions of object structures we need to extend the type system with type and constructor classes. In this thesis we have constructed a functional, declarative system in which one can develop interactive functional programs on a high level of abstraction. We think that it is one step towards reducing the complexity of developing correct and reliable software.