Synchronous languages [
1], [
4], [
7], [
9] address the specication and programming of
reactive processes, i.e. processes which continuously respond to stimuli at a rate determined by the environment. The
synchrony hypothesis [
1] states that a process is fully responsible for the synchronization with its environment, that is:
| – |
event synchronization: the process is always able to react to events of the environment at a rate determined by the environment;
|
| – |
response synchronization: the response synchronizes properly with the environment, i.e., the time elapsed between a stimulus and the response of the
process is short enough (relatively to the dynamics of the environment) so that the environment is still receptive to the
response.
|
Furthermore, the behaviour of a process should be reproducible with regard to input events, or, in more technical terms, deterministic. Both these requirements are prerequisites for the dependable service of a process, for instance as controller in a safety-critical
environment such as an automobile, an aircraft, or a power station.
The work was partially funded by the Esprit LTR Action, “Synchronous Reactive Formalisms” (Esprit Project 22703).