{'fraction_non_alphanumeric': 0.02905811623246493, 'fraction_numerical': 0.0, 'mean_word_length': 5.283018867924528, '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}}
An abstraction-based genetic programming system

We extend tree-based typed Genetic Programming (GP) representation schemes by introducing System F, an expressive λ-calculus, for representing programs and types. At the level of programs, System F provides higher-order programming capabilities with functions and types as first-class objects, e.g., functions can take other functions and types as parameters. At the level of types, System F provides parametric polymorphism. The expressiveness of the system provides the potential for a genetic programming system to evolve looping, recursion, lists, trees and many other typical programming structures and behavior. This is done without introducing additional external symbols in the set of predefined functions and terminals of the system. In fact, we actually remove programming structures such as if/then/else, which we replace by two abstraction operators. We also change the composition of parse trees so that they may directly include types.