Principles of Mobile Maude
Mobile Maude is a mobile agent language extending the rewriting logic language Maude and supporting mobile computation. Mobile Maude uses reflection to obtain a simple and general declarative mobile language design and makes possible strong assurances of mobile agent behavior. The two key notions are processes and mobile objects. Processes are located computational environments where mobile objects can reside. Mobile objects have their own code, can move between different processes in different locations, and can communicate asynchronously with each other by means of messages. Mobile Maude’s key novel characteristics include: (1) reflection as a way of endowing mobile objects with “higher-order” capabilities; (2) object-orientation and asynchronous message passing; (3) a high-performance implementation of the underlying Maude basis; (4) a simple semantics without loss in the expressive power of application code; and (5) security mechanisms supporting authentication, secure message passing, and secure object mobility. Mobile Maude has been specified and prototyped in Maude. Here we present the Mobile Maude language for the first time, and illustrate its use in applications by means of Milner’s cell-phone example. We also discuss security and implementation issues.
Unable to display preview. Download preview PDF.
- 3.Ciancarini, P., Wolf, A.L. (eds.): COORDINATION 1999. LNCS, vol. 1594. Springer, Heidelberg (1999)Google Scholar
- 4.Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Quesada, J.: Maude: specification and programming in rewriting logic. SRI International (January 1999), http://maude.csl.sri.com
- 5.Clavel, M., Durán, F., Eker, S., Meseguer, J.: Building equational proving tools by reflection in rewriting logic. In: Proc. of the CafeOBJ Symposium 1998, Numazu, Japan, April 1998. CafeOBJ Project (1998), http://maude.csl.sri.com
- 6.Denker, G., Meseguer, J., Talcott, C.: Formal specification and analysis of active networks and communication protocols: the Maude experience. In: Proc. DARPA Information Survivability Conference and Exposition DICEX 2000, Hilton Head, South Carolina, vol. 1, pp. 251–265. IEEE, Los Alamitos (2000)CrossRefGoogle Scholar
- 7.Fournet, C., Gonthier, G.: The reflexive cham and the join-calculus. In: Proceedings of 23rd ACM Symposium on Principles of Programming Languages, pp. 52–66. ACM, New York (1996)Google Scholar
- 10.Lange, D., Oshima, M.: Programming and Deploying Java Mobile Agents with Aglets. Addison-Wesley, Reading (1998)Google Scholar
- 11.Lange, D.B., Oshima, M.: Seven good reasons for mobile agents. Communications of the Association for Computing Machinery 42, 88–89 (1999)Google Scholar
- 13.Meseguer, J.: Rewriting logic and Maude: a wide-spectrum semantic framework for object-based distributed systems. In: Proc. FMOODS 2000. Kluwer, Dordrecht (2000) (to appear) Google Scholar
- 17.Tripathi, A., Karnik, N., Vora, M., Ahmed, T., Singh, R.: Mobile agent programming in ajanta. In: Proceedings of the 19th International Confernce on Distributed Computing Systems, ICDCS 1999 (1999)Google Scholar
- 18.White, J.: Telescript technology: the foundation for the electronic marketplace. General Magic White Paper, General Magic, Inc. (1994)Google Scholar