CrossCode: Multi-level Visualization of Program Execution
Devamardeep Hayatpur, Daniel Wigdor, Haijun Xia
Abstract
Program visualizations help to form useful mental models of how programs work, and to reason and debug code. But these visualizations exist at a fixed level of abstraction, e.g., line-by-line. In contrast, programmers switch between many levels of abstraction when inspecting program behavior. Based on results from a formative study of hand-designed program visualizations, we designed CrossCode, a web-based program visualization system for JavaScript that leverages structural cues in syntax, control flow, and data flow to aggregate and navigate program execution across multiple levels of abstraction. In an exploratory qualitative study with experts, we found that CrossCode enabled participants to maintain a strong sense of place in program execution, was conducive to explaining program behavior, and helped track changes and updates to the program state.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 5cd15d7a-4052-445f-9e95-6bd9449327f2Cited by top-tier papers7
- Luminate: Structured Generation and Exploration of Design Space with Large Language Models for Human-AI Co-CreationSangho Suh, Meng Chen, Bryan Min, Toby Jia-Jun Li et al.CHI 2024 · 143 citations
- Graphologue: Exploring Large Language Model Responses with Interactive DiagramsPeiling Jiang, Jude Rayan, Steven P. Dow, Haijun XiaUIST 2023 · 135 citations
- Malleable Overview-Detail InterfacesBryan Min, Allen Chen, Yining Cao, Haijun XiaCHI 2025 · 25 citations
- The Shapes of Abstraction in Data Structure DiagramsDevamardeep Hayatpur, Brian Hempel, Richard Lin, Haijun XiaCHI 2025 · 7 citations
- Taking ASCII Drawings Seriously: How Programmers Diagram CodeDevamardeep Hayatpur, Brian Hempel, Kathy Chen, William Duan et al.CHI 2024 · 7 citations
Builds on3
- Projection Boxes: On-the-fly Reconfigurable Visualization for Live ProgrammingSorin LernerCHI 2020 · 52 citations
- How Domain Experts Create Conceptual Diagrams and Implications for Tool DesignDor Ma'ayan, Wode Ni, Katherine Ye, Chinmay Kulkarni et al.CHI 2020 · 19 citations
- The Role of Working Memory in Program TracingWill Crichton, Maneesh Agrawala, Pat HanrahanCHI 2021 · 13 citations
Related papers
- DrAsync: Identifying and Visualizing Anti-Patterns in Asynchronous JavaScriptAlexi Turcotte, Michael D. Shah, Mark W. Aldrich, Frank TipICSE 2022 · 5 citations
- Developers' Visuo-spatial Mental Model and Program ComprehensionAbir Bouraffa, Gian-Luca Fuhrmann, Walid MaalejICSE 2023 · 1 citation
- CPVis: Evidence-based Multimodal Learning Analytics for Evaluation in Collaborative ProgrammingGefei Zhang, Shenming Ji, Yicao Li, Jingwei Tang et al.CHI 2025 · 8 citations
- CoLadder: Manipulating Code Generation via Multi-Level BlocksRyan Yen, Jiawen Stefanie Zhu, Sangho Suh, Haijun Xia et al.UIST 2024 · 22 citations
- CodeStream: Augmenting Timelines with Code Annotation for Navigating Large Coding HistoriesAshley Ge Zhang, Yan-Ru Jhou, Yinuo Yang, Shamita Rao et al.CHI 2026 · 1 citation
