{'fraction_non_alphanumeric': 0.01591187270501836, 'fraction_numerical': 0.0, 'mean_word_length': 5.816666666666666, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Implementing Mobile Haskell

Mobile computation enables computations to move between a dynamic set of locations and is becoming an increasingly important paradigm. Mobile Haskell (mHaskell) is an extension of Haskell that supports mobile computation in open distributed systems i.e. dynamically changing systems 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.