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.
In the previous work [3], we have given 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 featured instantiation and reuse of components, as well as sequential composition, choice and scope.
This work extends the previous one to include a parallel composition. Moreover, we improve on the operational semantics by using a small-step reduction relation. As a result, we can prove the soundness property of our static type system using the technique of Wright and Felleisen.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Barendregt, H.: Lambda Calculi with Types. In: Abramsky, Gabbay, Maibaum (eds.) Handbook of Logic in Computer Science, vol. II. Oxford University Press, Oxford (1992)
Bezem, M., Truong, H.: A Type Systemfor the Safe Instantiation of Components, July 2004. Electronic Notes in Theoretical Computer Science, vol. 97 (2004)
Bezem, M., Truong, H.: Counting Instances of Software Components. In: Proceedings of LRPP’04 (July 2004)
Cardelli, L.: Type systems. In: Tucker, A.B. (ed.) The Computer Science and Engineering Handbook, ch.103, pp. 2208–2236. CRC Press, Boca Raton (1997)
Crary, K., Walker, D., Morrisett, G.: Typed Memory Management in a Calculus of Capabilities. In: Twenty-Sixth ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Antonio, TX, USA, January 1999, pp. 262–275 (1999)
Crary, K., Weirich, S.: Resource Bound Certification. In: The Twenty-Seventh ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Boston, MA, USA, January 2000, pp. 184–198 (2000)
Dushnik, B., Miller, E.W.: Partially Ordered Sets. American Journal of Mathematics 63 (1941)
Englander, R.: Developing Java Beans, 1st edn. (June 1997) ISBN 1-56592-289-1
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns - Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading (1994) ISBN 0201633612
Meijer, E., Szyperski, C.: Overcoming Independent Extensibility Challenges. Communications of the ACM 45(10), 41–44 (2002)
Milner, R., Tofte, M., Harper, R., MacQueen, D.: The Definition of Standard ML (Revised). MIT Press, Cambridge (1997)
Pierce, B.: Types and Programming Languages, February 2002. MIT Press, Cambridge (2002) ISBN 0262162091
Seco, J.C.: Adding Type Safety to Component Programming. In: Proc. of The PhD Student’s Workshop in FMOODS’02, University of Twente, the Netherlands (March 2002)
Smith, F., Walker, D., Morrisett, G.: Alias Types. In: European Symposium on Programming, Berlin, Germany (March 2000)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley, Reading (2002) ISBN 0201745720
Terese.: Term Rewriting Systems. In: Cambridge Tracts in Theoretical Computer Science, vol. 55. Cambridge University Press, Cambridge (2003)
Thai, T.L., Lam, H.: NET Framework Essentials, 3rd edn., August 2003, pp. 302–301 (2003) , ISBN 0-596- 00302-1
Wright, K., Felleisen, M.: A Syntactic Approach to Type Soundness. Information and Computation 115(1), 38–94 (1994)
Zenger, M.: Type-Safe Prototype-Based Component Evolution. In: Proceedings of the European Conference on Object-Oriented Programming, Malaga, Spain (June 2002)
Zenger, M.: Programming Language Abstractions for Extensible Software Components, PhD Thesis, No. 2930, EPFL, Switzerland (March 2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 IFIP International Federation for Information Processing
About this paper
Cite this paper
Truong, H. (2005). Guaranteeing Resource Bounds for Component Software. In: Steffen, M., Zavattaro, G. (eds) Formal Methods for Open Object-Based Distributed Systems. FMOODS 2005. Lecture Notes in Computer Science, vol 3535. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11494881_12
Download citation
DOI: https://doi.org/10.1007/11494881_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26181-0
Online ISBN: 978-3-540-31556-8
eBook Packages: Computer ScienceComputer Science (R0)