Abstract
Finding good abstractions to model and express partial update, mobility and wrapping in object-oriented systems remains challenging. In this paper, we propose Comp, a process calculus approach for component models that merges aspects of object-orientation and evolution. The key features of Comp are: a hierarchical structure of components; the capacity to move, update, wrap components; method interfaces for components; and some isolation capacities to encode distribution and wrapping. Specifically, we introduce the syntax of Comp and formulate its operational semantics. We show a number of examples of use of Comp, with particular emphasis on common evolution patterns for components.
Partly funded by the EU project FP7-231620 HATS.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ahrendt, W., Dylla, M.: A system for compositional verification of asynchronous objects. Science of Computer Programming (2010) (in press)
OSGi Alliance. Osgi Service Platform, Release 3. IOS Press, Inc., Amsterdam (2003)
Bhatti, N.T., Hiltunen, M.A., Schlichting, R.D., Chiu, W.: Coyote: A system for constructing fine-grain configurable communication services. ACM Trans. Comput. Syst. 16(4) (1998)
Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.-B.: The Fractal Component Model and its Support in Java. Software - Practice and Experience 36(11-12) (2006)
Bugliesi, M., Castagna, G., Crafa, S.: Access control for mobile agents: the calculus of boxed ambients. ACM. Trans. Prog. Languages and Systems 26(1) (2004)
Cardelli, L., Gordon, A.D.: Mobile Ambients. Theoretical Computer Science 240(1) (2000)
Castagna, G., Vitek, J., Nardelli, F.Z.: The Seal calculus. Inf. Comput. 201(1) (2005)
Coulson, G., Blair, G., Grace, P., Joolia, A., Lee, K., Ueyama, J.: OpenCOM v2: A Component Model for Building Systsms Software. In: Proceedings of IASTED Software Engineering and Applications, SEA 2004 (2004)
de Boer, F.S., Clarke, D., Johnsen, E.B.: A complete guide to the future. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 316–330. Springer, Heidelberg (2007)
Full ABS Modeling Framework, Deliverable 1.2 of project FP7-231 620 (HATS) (March 2011), http://www.hats-project.eu
Fournet, C., Gonthier, G.: The join calculus: A language for distributed mobile programming. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds.) APPSEM 2000. LNCS, vol. 2395, pp. 268–332. Springer, Heidelberg (2002)
European Project HATS, http://www.hats-project.eu
Johnsen, E.B., Owe, O.: An asynchronous communication model for distributed concurrent objects. Software and Systems Modeling 6(1), 35–58 (2007)
Leclercq, M., Quema, V., Stefani, J.-B.: DREAM: a Component Framework for the Construction of Resource-Aware, Configurable MOMs. IEEE Distributed Systems Online 6(9) (2005)
Lenglet, S., Schmitt, A., Stefani, J.-B.: Howe’s Method for Calculi with Passivation. In: Bravetti, M., Zavattaro, G. (eds.) CONCUR 2009. LNCS, vol. 5710, pp. 448–462. Springer, Heidelberg (2009), doi:10.1007/978-3-642-04081-8_30
Levi, F., Sangiorgi, D.: Mobile safe ambients. ACM. Trans. Prog. Languages and Systems 25(1) (2003)
Lienhardt, M., Schmitt, A., Stefani, J.-B.: Oz/k: A kernel language for component-based open programming. In: GPCE 2007: Proceedings of the 6th International Conference on Generative Programming and Component Engineering, pp. 43–52. ACM, New York (2007)
Liu, X., Kreitz, C., van Renesse, R., Hickey, J., Hayden, M., Birman, K., Constable, R.: Building Reliable, High-Performance Communication Systems from Components. In: Proceedings of the 1999 ACM Symposium on Operating Systems Principles, Kiawah Island, SC (December 1999)
Merro, M., Nardelli, F.Z.: Behavioral theory for mobile ambients. J. ACM 52(6), 961–1023 (2005)
Milner, R., Parrow, J., Walker, J.: A calculus of mobile processes, I and II. Inform. and Comput. 100(1), 1–40, 41–77 (1992)
Miranda, H., Pinto, A.S., Rodrigues, L.: Appia: A flexible protocol kernel supporting multiple coordinated channels. In: 21st International Conference on Distributed Computing Systems (ICDCS 2001). IEEE Computer Society, Los Alamitos (2001)
Montesi, F., Sangiorgi, D.: A model of evolvable components. In: Wirsing, M., Hofmann, M., Rauschmayer, A. (eds.) TGC 2010, LNCS, vol. 6084, pp. 153–171. Springer, Heidelberg (2010), doi:10.1007/978-3-642-15640-3_11
Morris, R., Kohler, E., Jannotti, J., Frans Kaashoek, M.: The Click Modular Router. In: ACM Symposium on Operating Systems Principles (1999)
Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture-based runtime software evolution. In: Proceedings of the 20th International Conference on Software Engineering, ICSE 1998, pp. 177–186. IEEE Computer Society, Washington, DC, USA (1998)
Oreizy, P., Medvidovic, N., Taylor, R.N.: Runtime software adaptation: framework, approaches, and styles. In: Companion of the 30th International Conference on Software Engineering, ICSE Companion 2008, pp. 899–910. ACM, New York (2008)
Sangiorgi, D.: From pi-calculus to higher-order pi-calculus - and back. In: Gaudel, M.-C., Jouannaud, J.-P. (eds.) CAAP 1993, FASE 1993, and TAPSOFT 1993. LNCS, vol. 668, pp. 151–166. Springer, Heidelberg (1993)
Schäfer, J., Poetzsch-Heffter, A.: Jcobox: Generalizing active objects to concurrent components. In: D’Hondt, T. (ed.) ECOOP 2010. LNCS, vol. 6183, pp. 275–299. Springer, Heidelberg (2010)
Schmitt, A., Stefani, J.-B.: The M-calculus: A Higher-Order Distributed Process Calculus. In: Proceedings 30th Annual ACM Symposium on Principles of Programming Languages, POPL (2003)
Schmitt, A., Stefani, J.-B.: The Kell Calculus: A Family of Higher-Order Distributed Process Calculi. In: Priami, C., Quaglia, P. (eds.) GC 2004. LNCS, vol. 3267, pp. 146–178. Springer, Heidelberg (2005)
Sun Microsystems. JSR 220: Enterprise JavaBeans, Version 3.0 – EJB Core Contracts and Requirements (2006)
Szyperski, C.: Component Software, 2nd edn. Addison-Wesley, Reading (2002)
Teller, D., Zimmer, P., Hirschkoff, D.: Using Ambients to Control Resources. In: Brim, L., Jančar, P., Křetínský, M., Kučera, A. (eds.) CONCUR 2002. LNCS, vol. 2421, pp. 288–303. Springer, Heidelberg (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lienhardt, M. et al. (2011). A Component Model for the ABS Language. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds) Formal Methods for Components and Objects. FMCO 2010. Lecture Notes in Computer Science, vol 6957. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25271-6_9
Download citation
DOI: https://doi.org/10.1007/978-3-642-25271-6_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-25270-9
Online ISBN: 978-3-642-25271-6
eBook Packages: Computer ScienceComputer Science (R0)