Counting Instances of Software Components
Abstract
Component software is software that has been assembled from various pieces of standardized, reusable computer programs, so-called components. Executing component software creates instances of these components. For several reasons, for example, limited resources and/or application requirements, it can be important to have control over the number of such instances. Clearly, in cases where this is possible, design-time or compile-time control is to be preferred to run-time control. We give an abstract component language and a type system which ensures that the number of simultaneously active instances of any component never exceeds a (sharp) bound expressed in the type. The language features instantiation and reuse of components, as well as sequential composition, choice and scope. Alternatively one can view the expressions in the language as denoting processes where the atomic actions are interpreted as either creating new, or reusing old instances.
Publisher
University of Bergen, Department of InformaticsSeries
Proceedings of LRPP'04: Workshop on Logics for Resources, Processes, and Programs, Turku, Finland, July 13, 2004Reports in Informatics