language-icon Old Web
English
Sign In

A Memory Diagram for All Seasons

2021 
Tracing code execution and creating memory diagrams have long been tools for teaching computer science. These techniques are useful beyond demonstration or assessment of understanding: they are teaching and learning tools. We argue that if consistent diagramming is used across courses and programming languages, variations to the level of detail in those diagrams can become a teaching technique. We previously described a consistent form of memory diagram to be used across curricula, Ithaca Memory Diagrams IMDs, and explained their basic use. After four more years of classroom use, we find that variation in these diagrams is useful to emphasize specific concepts and highlight features of various languages. Our updates to previously published memory diagrams improve their usefulness in courses from the high-level abstraction of CS1 to the depth of systems courses. We provide specific examples of this variation with explanation of the intended benefits.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    6
    References
    0
    Citations
    NaN
    KQI
    []