MobileML: A Programming Language for Mobile Computation

  • Authors:
  • Masatomo Hashimoto;Akinori Yonezawa

  • Affiliations:
  • -;-

  • Venue:
  • COORDINATION '00 Proceedings of the 4th International Conference on Coordination Languages and Models
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes a language which facilitates programming for mobile computation i.e., computation in which code migrates and continues to run across network nodes. Such languages allow us to develop novel distributed applications (such as workflow systems, flexible software distribution, and intelligent search systems) more easily and efficiently. However, many of existing programming language systems are often insufficient because they lack the support for concise description of migration and formal models for reasoning about program's properties including type safety and security. Our goal is to construct a programming language system which adequately supports mobile computation on a solid theoretical basis. As an attempt to achieve that, we have designed a programming language based on ML which has well-founded theoretical bases. The features of this language include: transparent migration, dynamic linking with distributed resources by means of contexts, and semantics consistent with the original ML. Especially, our notion of contexts allows us to succinctly describe the interaction between mobile code and environments at destination nodes. We briefly explain a simple semantic model based on Plotkin's λυ-calculus and tuple spaces. Though our model currently guarantees only type soundness, we believe that theoretical results such as prevention of security violation (of Heintze and Rieckes' SLam Calculus) can be incorporated into our system rather easily. We have also implemented an experimental interpreter system as a first step of the full-fledged language system.