Type-safe distributed programming with ML5

  • Authors:
  • Tom Murphy, VII.;Karl Crary;Robert Harper

  • Affiliations:
  • Department of Computer Science, Carnegie Mellon University, Pittsburgh, PA;Department of Computer Science, Carnegie Mellon University, Pittsburgh, PA;Department of Computer Science, Carnegie Mellon University, Pittsburgh, PA

  • Venue:
  • TGC'07 Proceedings of the 3rd conference on Trustworthy global computing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present ML5, a high level programming language for spatially distributed computing. The language, a variant of ML, allows an entire distributed application to be developed and reasoned about as a unified program. The language supports transparent mobility of any kind of code or data, but its type system, based on modal logic, statically excludes programs that use mobile resources unsafely. The ML5 compiler produces code for all of the hosts that may be involved in the computation. These hosts may be heterogeneous, with different resources and even different architectures. Currently, our compiler and runtime are specialized to the particular case of web programming: a distributed computation with two sites, the web browser and the web server.