Abstract
The ToolBus is a software coordination architecture for the integration of components written in different languages running on different computers. It has been used since 1994 in a variety of projects, most notably in the complete renovation of the Asf+Sdf Meta-Environment. In this paper we summarize the experience that has been gained in these projects and sketch preliminary ideas how the ToolBus can be further improved. Topics to be discussed include the structuring of message exchanges, crash recovery in distributed applications, and call-by-value versus call-by-reference.
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
Klint, P.: A meta-environment for generating programming environments. ACM Transactions on Software Engineering and Methodology 2, 176–201 (1993)
van den Brand, M.G.J., van Deursen, A., Heering, J., de Jong, H.A., de Jonge, M., Kuipers, T., Klint, P., Moonen, L., Olivier, P.A., Scheerder, J., Vinju, J.J., Visser, E., Visser, J.: The ASF+SDF Meta-Environment: a Component-Based Language Development Environment. In: Wilhelm, R. (ed.) CC 2001. LNCS, vol. 2027, pp. 365–370. Springer, Heidelberg (2001)
Bakker, H.C.N., Koorn, J.W.C.: Building an editor from existing components: an exercise in software re-use. Technical Report P9312, Programming Research Group, University of Amsterdam (1993)
van Vlijmen, S.F.M., Vriend, P.N., van Waveren, A.: Control and data transfer in the distributed editor of the ASF+SDF meta-environment. Technical Report P9415, University of Amsterdam, Programming Research Group (1994)
Mauw, S., Veltink, G.J.: A process specification formalism. Fundamenta Informaticae XIII, 85–139 (1990)
Bergstra, J.A., Klint, P.: The ToolBus: a component interconnection architecture. Technical Report P9408, University of Amsterdam, Programming Research Group (1994)
Bergstra, J.A., Klint, P.: The ToolBus coordination architecture. In: Hankin, C., Ciancarini, P. (eds.) COORDINATION 1996. LNCS, vol. 1061, pp. 75–88. Springer, Heidelberg (1996)
Bergstra, J.A., Klop, J.W.: Process algebra: specification and verification in bisimulation semantics. In: Hazewinkel, M., Lenstra, J.K., Meertens, L.G.L.T. (eds.) Mathematics & Computer Science II. CWI Monograph., vol. 4. North-Holland, Amsterdam (1986)
Olivier, P.A.: Embedded system simulation: testdriving the ToolBus. Technical Report P9601, University of Amsterdam, Programming Research Group (1996)
Dams, D., Groote, J.F.: Specification and Implementation of Components of a muCRL toolbox. Logic Group Preprint Series 152, Utrecht University, Dept. of Philosoph (1995)
Lisser, B., van Wamel, J.J.: Specification of components in a proposition solver. Technical Report SEN-R9720, Centrum voorWiskunde en Informatica, CWI (1997)
Diertens, B.: Simulation and animation of process algebra specifications. Technical Report P9713, Programming Research Group, University of Amsterdam (1997)
Bergstra, J.A., Klint, P.: The discrete time ToolBus. Technical Report P9502, University of Amsterdam, Programming Research Group (1995)
Bergstra, J.A., Klint, P.: The discrete time ToolBus. In: Nivat, M., Wirsing, M. (eds.) AMAST 1996. LNCS, vol. 1101, pp. 286–305. Springer, Heidelberg (1996)
Bergstra, J.A., Klint, P.: The discrete time ToolBus—a software coordination architecture. Science of Computer Programming 31, 205–229 (1998)
van den Brand, M.G.J., Heering, J., Klint, P.: Renovation of theASF+SDF meta-environment - current state of affairs. In: Sellink, M.P.A. (ed.) Proceedings of the 2nd International Workshop on the Theory and Practice of Algebraic Specifications. electronic Workshops in Computing, Springer, Heidelberg (1997)
van den Brand, M.G.J., de Jong, H.A., Klint, P., Olivier, P.A.: Efficient Annotated Terms. Software, Practice & Experience 30, 259–291 (2000)
Olivier, P.A.: A Framework for Debugging Heterogeneous Applications. PhD thesis, University of Amsterdam (2000)
van de Brand, M.G.J., Moreau, P.E., Vinju, J.J.: Environments for Term Rewriting Engines for Free. In: Nieuwenhuis, R. (ed.) RTA 2003. LNCS, vol. 2706, Springer, Heidelberg (2003) (to appear)
Gelernter, D., Carriero, N.: Coordination languages and their significance. Communications of the ACMÂ 35, 96 (1992)
de Jong, H.A., Olivier, P.A.: Generation of abstract programming interfaces from syntax definitions. Technical Report SEN-R0212, St. Centrum voorWiskunde en Informatica (CWI), Submitted to Journal of Logic and Algebraic Programming (2002)
Mosses, P.D.: System demonstration: Action semantics tools. In: van den Brand, M.G.J., Lämmel, R. (eds.) Proceedings of the Second Workshop on Language Descriptions, Tools and Applications (LDTA 2002). Electronic Notes in Theoretical Computer Science, vol. 65.3 (2002)
van de Brand, M.G.J., Ringeissen, C.: ASF+SDF parsing tools applied to ELAN. In: Futatsugi, K. (ed.) Third International Workshop on Rewriting Logic and its Applications (WRLA 2000). Electronic Notes in Theoretical Computer Science, vol. 36, Elsevier Science Publishers, Amsterdam (2001)
Blom, S.C.C., Fokkink, W.J., Groote, J.F., van Langevelde, I., Lisser, B., van de Pol, J.C.: μCRL: A toolset for analysing algebraic specifications. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 250–254. Springer, Heidelberg (2001)
Brinksma, E.: On the Design of Extended LOTOS–A Specification Language for Open Distributed Systems. PhD thesis, University Twente (1988)
Diertens, B.: New features in PSF I – Interrupts, Disrupts, and Priorities. Technical Report P9417, Programming Research Group, University of Amsterdam (1994)
Elnozahy, E.N.M., Alvisi, L., Wang, Y., Johnson, D.B.: A survey of rollback-recovery protocols in message-passing systems. ACM Computing Surveys (CSUR) 34, 375–408 (2002)
Randell, B.: System structures for software fault tolerance. IEEE Transactions on Software Engineering SE-1, 21–232 (1975)
Klint, P.: A Study in String Processing Languages. LNCS, vol. 205. Springer, Heidelberg (1985)
Zorzo, A., Romanovsky, A., Xu, J., Randell, B., Stroud, R., Welch, I.: Using coordinated atomic actions to design dependable distributed object systems. In: OOPSLA 1997 Workshop on Dependable Distributed Object Systems (1997)
Bergstra, J.A., Ponse, A., van Wamel, J.: Process algebra with backtracking. In: REX School/Symposium, pp. 46–91 (1993)
Object Management Group (OMG): The Common Object Request Broker: Architecture and Specification (1999), http://www.omg.org/technology/documents/formal/corba_2.htm
Sun MicroSystems Inc.: Java Remote Method Specification (2003), http://java.sun.com/j2se/1.4/docs/guide/rmi
Object Management Group: CORBA IIOP Specification (2003), http://www.omg.org/technology/documents/formal/corba_iiop.htm
Business Process Management Initiative: Business Process Modeling Language (2002), http://www.bpmi.org/bpmi-downloads/BPML1.0.zip
W3C:World Wide Web Consortium: Web Services Description Language (2001), http://www.w3.org/TR/wsdl
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
de Jong, H., Klint, P. (2003). ToolBus: The Next Generation. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, WP. (eds) Formal Methods for Components and Objects. FMCO 2002. Lecture Notes in Computer Science, vol 2852. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39656-7_9
Download citation
DOI: https://doi.org/10.1007/978-3-540-39656-7_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20303-2
Online ISBN: 978-3-540-39656-7
eBook Packages: Springer Book Archive