A Programming-Language Extension for Distributed Real-Time
Jozef Hooman and
Onno van Roosmalen
Computing Science Reports, Report 97/02,
Department of Computing Science, Eindhoven University of Technology,
January 1997, pp. 50.
In this paper we propose a method for extending programming languages
that enables the specification of timing properties of systems.
The way time is treated is not language specific and the extension can
therefore be included in many existing programming languages.
The presented method includes a view on the system development process.
An essential feature is that it enables the construction of (hard) real-time
programs that may be proven correct independently of the properties of
the machines that are used for their execution.
It therefore provides a similar abstraction from the execution platform
as is normal for non-real-time languages.
The aim of this paper is to illustrate the method and demonstrate
its applicability to actual real-time problems.
To this end we define a simple programming language that includes
the timing extension.
We present a formal semantics for a characteristic part of the language
constructs and apply formal methods to prove the correctness of
a small example program.
We consider in detail a larger example, namely the mine-pump problem known
from the literature.
We construct a real-time program for this problem and describe various ways
to map the program to an implementation for different platforms.