Foundations of a simple and unified component-oriented language

Component-oriented programming (COP) is actually a key research track in software engineering. A variety of component-oriented languages (COLs) have been proposed with new or adapted abstractions and mechanisms to support this new paradigm. However, the proposed features vary quite widely from one p...

Full description

Saved in:
Bibliographic Details
Published in:Computer languages, systems & structures Vol. 34; no. 2; pp. 130 - 149
Main Authors: Fabresse, Luc, Dony, Christophe, Huchard, Marianne
Format: Journal Article
Language:English
Published: Elsevier Ltd 01-07-2008
Elsevier
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Component-oriented programming (COP) is actually a key research track in software engineering. A variety of component-oriented languages (COLs) have been proposed with new or adapted abstractions and mechanisms to support this new paradigm. However, the proposed features vary quite widely from one proposal to another. There is a need for a closer analysis and synthesis of these features to really discover the new possibilities of COP. In this article we present S CL, our proposition of simple language dedicated to COP. Through the presentation of S CL, we discuss and compare the main features of COLs such as component class, component, interface, port, service or connector. But these features are not enough to build a COL. Indeed, unanticipated connection of independently developed components is one of the key issues of COP. Most approaches use language primitives or connectors and shared interfaces to connect components. But shared interfaces are in contradiction with the philosophy of independently developed components. The approach of S CL is to provide a uniform component connection mechanism based on special components called connectors. S CL also integrates component properties which enable connections based on component state changes with no requirements of specific code in components.
ISSN:1477-8424
1873-6866
DOI:10.1016/j.cl.2007.05.002