Reo presents a paradigm for composition of distributed software components and services based on the notion of mobile channels. Reo enforces an exogenous channel-based coordination model that defines how designers can build complex coordinators, called connectors, out of simpler ones. Application designers can use Reo as a "glue code" language for compositional construction of connectors that orchestrate the cooperative behavior of instances of components or services in a component-based system or a service-oriented application.
The Reo coordination language provides, among others, the following features:
- Loose coupling among components and services
- Support for distribution and mobility of heterogeneous components
- Exogenous coordination (i.e., by third parties)
- Compositional construction
- Arbitrary mix of synchrony and asynchrony
- User-defined primitives
- Dynamic reconfigurability
- Formal graphical syntax analogous to electronic circuit diagrams
- Formal semantics based on a coinductive calculus of flow and (alternatively) on constraint automata
- Specification and verification methods using programming logic.
- Browse through the list of publications on Reo.
- View animations of some example connectors.
- Find out more about our tools.
- Get involved in the tool development.
- Subscribe to one of our mailing lists.