Abstract
In this paper we address interoperability between components specified using various languages within a same family of DSLs. Our approach consists in applying results of the category theory in order to merge the languages into a unification one, automatically obtained. For this, we use the category of formal specifications of each DSL in the family. Using colimits on the category of algebraic specifications that implements the semantics of the DSLs in the family, we construct a language that unifies the family. Additionally we obtain translation morphisms from individual DSLs to the resulting unified one. By application of the translation morphisms, one can translate each component specifications into a specification written in the unification language. Moreover, properties established in the context of a DSL are transferred to the unifying language. In this paper, we illustrate the unification and the preservation of a property on an example.
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
Abou Dib, A., Féraud, L., Ober, I., Percebois, C.: Towards a rigorous framework for dealing with domain specific language families. In: ICTTA 2008 Proceedings of the 3rd IEEE International Conference on Information & Communication Technologies: From Theory to Applications. IEEE Computer Press, Los Alamitos (in press, 2008)
Anlauff, M., Kutter, P.W., Pierantonio, A., Sünbül, A.: Using Domain-Specific Languages for the Realization of Component Composition. In: Maibaum, T.S.E. (ed.) FASE 2000. LNCS, vol. 1783, pp. 112–126. Springer, Heidelberg (2000)
Batory, D., Lofaso, B., Smaragdakis, Y.: JTS: Tools for Implementing Domain-Specific Languages. In: Proceedings of the 5th International Conference on Software Reuse, June 02-05, p. 143 (1998)
Ordonez Camacho, D., Mens, K., van den Brand, M., Vinju, J.J.: Automated Derivation of Translators From Annotated Grammars. Electr. Notes Theor. Comput. Sci. 164(2), 121–137 (2006)
Consel, C., Latry, F., Réveillillere, L., Cointe, P.: A generative programming approach to developing DSL compilers. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 29–46. Springer, Heidelberg (2005)
ECSS-E-70-31A - Space Engineering Standard - Ground Systems and Operations - Monitoring and Control Data Definition standard
Fiadero, J.L.: Categories for Software Engineering. Springer, Heidelberg (2005)
Goguen, J.A., Burstall, R.M.: Introducing Institutions: Abstract model theory for specification and programming. Research Report ECS-LFCS-90-106, University of Edinburgh (1990)
Hoare, C.A.R., Misra, J.: Vision of a Grand Challenge project, Verified Software: Theories, Tools, Experiments (VSTTE). In: IFIP 2005, ETH (July 2005)
Hongge, G., Weyman, J.: An Approach to Automation of Fusion Using Specware. In: Proceedings of the Second International Conference on Information Fusion, pp. 109–116 (1999)
Jouault, F., Bézivin, J., Consel, C., Kurtev, I., Latry, F.: Building DSLs with AMMA/ATL, a Case Study on SPL and CPL Telephony Languages. In: ECOOP Workshop on Domain-Specific Program Development (DSPD) (2006)
Kestrel. Specware documentation, http://www.specware.org/doc.html
Kurtev, I., Bézivin, J., Jouault, F., Valduriez, P.: Model-based DSL frameworks. OOPSLA Companion, pp. 602–616 (2006)
Lapets, A.: Algebraic Semantics of Domain-Specific Languages Thesis, Harvard (2006)
Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)
Nipkow, T., Paulson, L.C., Wenzel, M.T. (eds.): Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)
Oriat, C.: Étude des spécifications modulaires: constructions de colimites finies, diagrammes, isomorphismes. PhD thesis (in French), INPG, Grenoble (1996)
Pavlovic, D., Smith, D.R.: Software Development by Refinement. In: Aichernig, B.K., Maibaum, T.S.E. (eds.) Formal Methods at the Crossroads. From Panacea to Foundational Support. LNCS, vol. 2757, pp. 267–286. Springer, Heidelberg (2003)
Rugaber, S., Stirewalt, K.: Model Driven Reverse Engineering. IEEE Software 21(4), 45–53 (2004)
Schneider, J.-G., Nierstrasz, O.: Components, scripts and glue. In: Software Architectures - Advances and Applications, pp. 13–25. Springer, Heidelberg (1999)
Smith, D.: Composition by Colimit and Formal Software Development. In: Futatsugi, K., Jouannaud, J.-P., Meseguer, J. (eds.) Algebra, Meaning, and Computation. LNCS, vol. 4060, pp. 317–332. Springer, Heidelberg (2006)
Sprinkle, J., Karsai, G.: A domain-specific visual language for domain model evolution. Journal of Visual Languages & Computing 15(3-4), 291–307 (2004)
Williamson, K., Healy, M., Barker, R.: Industrial Applications of Software Synthesis via Category Theory—Case Studies Using Specware. ASE Journal 8(1), 7–30 (2001)
Wirsing, M.: Algebraic specification languages: An overview. In: Reggio, G., Astesiano, E., Tarlecki, A. (eds.) Abstract Data Types 1994 and COMPASS 1994. LNCS, vol. 906, pp. 81–115. Springer, Heidelberg (1995)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ober, I., Abou Dib, A., Féraud, L., Percebois, C. (2008). Towards Interoperability in Component Based Development with a Family of DSLs. In: Morrison, R., Balasubramaniam, D., Falkner, K. (eds) Software Architecture. ECSA 2008. Lecture Notes in Computer Science, vol 5292. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-88030-1_12
Download citation
DOI: https://doi.org/10.1007/978-3-540-88030-1_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-88029-5
Online ISBN: 978-3-540-88030-1
eBook Packages: Computer ScienceComputer Science (R0)