{'fraction_non_alphanumeric': 0.015691868758915834, 'fraction_numerical': 0.0, 'mean_word_length': 5.104347826086957, '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 system to make visible the structure and execution of student programs

Visual models help to convey programming insights and computer science principles. This paper describes the design criteria for a software system which automatically constructs visual models as a program runs. Line-by-line execution and data structures are dynamically updated on a display screen. The system can be used either by an instructor in class demonstrations, or by the student in running his or her own programs.
Motivations for the design criteria are discussed, along with tradeoffs in implementation. A system has been developed for the Pascal programming language, running on a variety of popular microcomputers.