BCOOPL

BCOOPL is a small, concurrent object-oriented programming language specifically designed to support component-oriented programming. BCOOPL has a long research history. It roots can be traced back to path expressions \cite{campbell74pathexpr}, and the concurrent object-oriented programming languages Procol \cite{bos91procol} and Talktalk \cite{bouwman96talktalk}. One of the strong points of BCOOPL is the built-in support of design patterns catering for component-oriented programming (see \cite{gamma95patterns} for a pattern catalog). In particular, BCOOPL supports the Observer, the Mediator and the Bridge design patterns directly. The Observer and Bridge pattern are particular useful for specifying stand-alone components, whereas the Mediator pattern is used to mediate interactions between those components \cite{bruin00control}. Other design patterns frequently used in components, such as the Facade and the Proxy, can be implemented relatively easily in comparison with more traditional object-oriented programming languages like Java and C++. A detailed account of BCOOPL and some of its application areas can be found in \cite{bruin00bcoopl}, which also addresses implementation issues. <accesscontrol>Access:We got to move</accesscontrol>