Many real-time systems make use of concurrent programming systems and are o
ften designed using object oriented design methods. Concurrent Object Orien
ted Languages (COOLS) are a class of programming language that integrates t
he facilities of concurrent and object oriented programming in an integrate
d rather than orthogonal manner. With the increasing interest in the use of
object oriented languages such as C++ for the programming of embedded and
real-time systems COOLs seem to be a natural candidate for such tasks. Seve
ral COOLs have been described in the literature which address the requireme
nts of concurrent programming, inter-process communication (IPC) and synchr
onisation in various different ways. This paper discusses one such language
, ClassiC, and examines the approach to this problem taken in its design. I
n particular, it is shown that the features of ClassiC allow derivation of
active classes from other active classes. It is shown how this property can
be used to overcome some of the problems associated with synchronous LPC s
chemes while maintaining the advantages of them and how the use of the asyn
chronous IPC model allows verification of synchronisation and deadlock prop
erties based on the use of CSP methods. (C) 1998 Elsevier Science B.V. All
rights reserved.