@InProceedings{Adamo89, title = "{C}\_{NET} {A} {C}++ {B}ased {L}anguage {F}or {D}istributed {A}nd {R}eal {T}ime {P}rogramming", author= "Adamo, Jean\_Marc", editor= "Wexler, J.", pages = "159--170", booktitle= "{OUG}-11: {D}eveloping {T}ransputer {A}pplications", isbn= "90 5199 020 0", year= "1989", month= "sep", abstract= "C\_NET is a high level C++ based language devoted to multiprocessor architecture programming. It has been designed so as to offer concepts of object-oriented programming, communicating processes and exception handling, all within the same language. The purpose of this paper is to describe how merging these concepts into C\_NET has been organized. Consequently, the paper is divided into three parts. The first is concerned with discussing the different roles that the notions of class object and process are intended to play within the language. It is argued that these roles are in fact orthogonal, since the first two notions are primarily concerned with data structuring, encapsulation and inheritance, whereas the last one is mainly concerned with threads of control and synchronization. The second part is devoted to describing the exception handling system, which makes it possible to derive process preemption mecanisms by combining exceptions with parallelism. Process preemption raises some atomicity problems, which are discussed at the end of the second part. Finally the last part provides information on the state of the project development and on future perspectives." }