{'fraction_non_alphanumeric': 0.014604810996563574, 'fraction_numerical': 0.0, 'mean_word_length': 5.331521739130435, '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}}
Maiday: An environment for guided programming with a definitional language

MAIDAY is a programming environment that provides methodological assistance. It supports a definitional language in which the user defines objects instead of manipulating variables as in typical programming languages. In this paper we present the heart of the system: the editor EDME. Editing commands operate only upon the logical structure of the algorithm rather than upon its abstract tree structure. This logical structure is concrete and stratified into four levels. On each level the user manipulates the elements of the next lower level without having access to their internal structure. EDME also provides a carefully designed user interface. Information is displayed by a multi-window screen. The system helps the user in three ways. Syntax errors are corrected or revealed, context-sensitive constraints are validated and a programming methodology is encouraged. We hope to provide automatic guidance about algorithm creation in the future. The current implementation provides a means of experimentation as we investigate the planning processes involved in creating algorithms.