The CREOL project is a research project to investigate programming constructs and reasoning control in the context of open distributed systems, and in particular the issue of maintenance control, taking an object-oriented approach. The project focuses on support for component adaptability, combined with a platform for executable specification and analysis of system models. This allows an investigation at two levels: a theoretical framework for reasoning about software and software updates, and a tool for practical experimentation with the consequences and possibilities of the theoretical choices. The goal of the project is to develop a formal framework and tool for reasoning about dynamic and reflective modifications in open distributed systems, ensuring reliability and correctness of the overall system.
|
These issues will be investigated in the context of Creol, an experimental high-level object-oriented language for distributed objects. The name is an acronym for Concurrent Reflective Object-oriented Language. The language is based on concurrent objects communicating by means of asynchronous method calls, and is formally defined with an operational semantics expressed in rewriting logic. The basic communication mechanisms and operational semantics of the language are described in [3, 12]. The inclusion of multiple inheritance in the language and the operational semantics is described in [9]. A type and effect system for the language is given in [4]. Specifications in rewriting logic are executable in the rewriting logic tool Maude. A prototype Maude interpreter for the communication basis of the Creol language has been developed and extended with a pseudo-deterministic rewrite strategy in order to better simulate the non-determinism of a distributed environment [13]. The language and the interpreter will gradually be extended to incorporate facilities for reflective programming, dynamic updates, and a coordination language based on viewpoint specifications (or behavioral interfaces) [14, 19]. An extension of the language and the interpreter with a dynamic class construct is presented in [7]. A binding strategy for method calls which is adapted to dynamic class extensions is presented in [6]. A type system for runtime class updates is presented in [5]. |
CREOL: An exciting mix of the best ingredients from many cultures! |
| University of Oslo: | Ohio State University (USA): | Ph.D. students: |
| Olaf Owe | Neelam Soundarajan | Johan Dovland |
| Einar Broch Johnsen | Ingrid Chieh Yu | |
| Stein Krogdahl | Computer Science Laboratory | Arild Torjusen |
| University of Lille 1 (France) | ||
| Isabelle Ryl |
< ifi | databehandling| pma >