Abstract: Mobile computation enables computations to move between a dynamic set of locations, and is becoming an increasingly important paradigm. mHaskell is an extension of Haskell that supports mobile computation in open distributed systems i.e. a system where multiple executing programs can interact using a predefined protocol. This paper outlines the mHaskell primitives, discusses the design and pragmatics of their implementation and includes preliminary performance comparisons with Jocaml. The implementation addresses several challenges, including serialisation of programs in a lazy language with sharing, and using a combination of bytecode and machine code to manage the common software base, i.e. to determine what to communicate between locations.
André Rauber Du Bois, Philip W. Trinder, Ha