{'fraction_non_alphanumeric': 0.029333333333333333, 'fraction_numerical': 0.0026666666666666666, 'mean_word_length': 5.623529411764705, '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}}
A step towards ubiquitous computing: an efficient flexible micro-ORB

Smart devices, such as personal assistants, mobile phone or smart cards, continuously spread and thus challenge every aspect of our lives. However, such environments exhibit specific constraints, such as mobility, high-level of dynamism and most often restricted resources. Traditional middle-wares were not designed for such constraints and, because of their monolithic, static and rigid architectures, are not likely to become a fit.In response, we propose a flexible micro-ORB, called Flex-ORB, that supports on demand export of services as well as their dynamic deployment and reconfiguration. Flex-ORB supports mobile code through an intermediate code representation. It is built on top of NEVERMIND, a flexible minimal execution environment, which uses a reflexive dynamic compiler as a central common language substrate upon which to achieve interoperability.Preliminary performance measurements show that, while being relatively small (120 KB) and dynamically adaptable, FlexORB outperforms traditional middlewares such as RPC, CORBA and Java RMI.