G. Stefanescu.
Interactive systems with registers and voices.
Draft, July 2004.

Abstract

We present a model, a core programming language, specification and analysis techniques appropriate for modeling, programming and reasoning about interactive computing systems.

The model consists of {\em rv-systems} ({\em interactive systems with registers and voices}); it includes register machines, is space-time invariant, is compositional, may describe computations extending in both time and space, and is applicable to open, interactive systems. To achieve modularity in space the model uses {\em voices} (a voice is the time dual of a register) - they provide a high level organization of temporal data and are used to describe interaction interfaces of processes.

The programming language uses novel techniques for syntax and semantics to support computation in space paradigm. We describe {\em rv-programs} and base their syntax and operational semantics on \fis s ({\em finite interactive systems}) and their grid languages (a \fis\ is a kind of 2-dimensional automaton specifying both control and interaction used in rv-programs).

The specification of rv-systems uses relations between input registers and voices and their output counterparts. The paper describes simple specifications for an OO-system and for an interactive game. The analysis techniques developed for rv-programs use finite automata, \fis s, and an intermediary class of decomposable \fis s.

Full paper: [ps] [pdf]