{'fraction_non_alphanumeric': 0.013431013431013432, 'fraction_numerical': 0.0, 'mean_word_length': 5.456692913385827, '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}}
Specialization of Distributed Actors by Partial Evaluation

Partial evaluation is a well-established technique for program specialization that might achieve dramatic runtime speedups. While it has been widely studied for sequential languages, partial evaluation of concurrent and distributed programs has received little attention. In this paper, we consider an asynchronous message passing language that can be seen as a simple but significant version of the concurrent and distributed language Erlang. We introduce a hybrid partial evaluation scheme for this language, and illustrate it with an example. A partial evaluation tool has been implemented and is publicly available. To the best of our knowledge, this is the first approach to the partial evaluation of an asynchronous message passing language like Erlang.