{'fraction_non_alphanumeric': 0.018867924528301886, 'fraction_numerical': 0.0, 'mean_word_length': 5.064285714285714, '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}}
Mobile Objects and Modern Communication Abstractions: Design Issues and Denotational Semantics

We introduce Join Voyager - a language that can be used to program a Peer to Peer network using object oriented techniques and Join methods. In Join Voyager any object can migrate to any node (peer) of the underlying network. The language provides strong mobility, i.e. the ability to capture and transfer the full execution state of mobile objects at any time. Objects can communicate by sending and receiving messages in object oriented style. As in Join Java or Polyphonic C#, both synchronous and asynchronous messages are supported. The paper presents the design rationales and a semantic interpreter for Join Voyager. The interpreter is designed with continuations following the discipline of denotational semantics and is implemented in Haskell.