María Alpuente,
Bernhard Gramlich and
Alicia Villanueva
A Framework for Timed Concurrent Constraint
Programming with External Functions
Electronic
Notes in Theoretical Computer Science, Volume 188 (Pages 1-156),
Proc. 6th Spanish Conference on Programming and Languages (PROLE 2006),
Sitges, Barcelona, Spain, Paqui Lucio and Fernando Orejas, eds., pages
143-155, July 2007.
Abstract
The timed concurrent constraint programming language (tccp in
short) was introduced for modeling reactive systems. This language
allows one to model in a very intuitive way typical ingredients of
these systems such as timeouts, preemptions, etc. However, there is no
natural way for modeling other desirable features such as functional
computations, for example for calculating arithmetic results. In fact,
although it is certainly possible to implement such kind of
operations, each single step of the computation takes time in tccp,
and avoiding interferences with the intended overall behavior of the
(reactive) system is quite involved.
In this paper, we propose an extension of tccp for modeling
instantaneous computations which improves the expressiveness of the
language, in the sense that operations that are cumbersome to
implement in pure tccp, are executed by calling an efficient, external
functional engine, while the tccp programmer can focus on the pure,
and usually more complex, reactive part of the system. We also
describe a case study which motivates the work, and discuss how the
new capability presented here can also be used as a new tool for
developers from the verification point of view.
Keywords: Timed Concurrent Constraint language; Functional features;
Case study