{'fraction_non_alphanumeric': 0.024, 'fraction_numerical': 0.0, 'mean_word_length': 4.686868686868687, '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}}
Incremental Loading in the Persistent C++ Language E

E is an extension of C++ language providing database types and persistence. Persistence in E entails some form of dynamic linking of method code. This is because a program might encounter, on the persistent store, an object whose type was not known to the program when it was compiled. This necessitates dynamic linking of the method code of the corresponding type to the program so that the type definition is made available to the program. The current run-time support library provided by E is inadequate for this purpose. We modify and extend the run-time library of E by adding functionalities to dynamically link and unlink object modules. We then present the design of a class Type to facilitate persistent types. Each user-defined type will have a unique persistent Type object associated with it. Class Type provides methods for dynamic linking and unlinking of user-defined classes using the extended run-time support. In addition, class Type ensures identity of user-defined types, i.e., each user-defined type will have a unique identity across compilations of