Projection Boxes: On-the-fly Reconfigurable Visualization for Live Programming
Sorin Lerner
Abstract
Live programming is a regime in which the programming environment provides continual feedback, most often in the form of runtime values. In this paper, we present Projection Boxes, a novel visualization technique for displaying runtime values of programs. The key idea behind projection boxes is to start with a full semantics of the program, and then use projections to pick a subset of the semantics to display. By varying the projection used, projection boxes can encode both previously known visualization techniques, and also new ones. As such, projection boxes provide an expressive and configurable framework for displaying runtime information. Through a user study we demonstrate that (1) users find projection boxes and their configurability useful (2) users are not distracted by the always-on visualization (3) a key driving force behind the need for a configurable visualization for live programming lies with the wide variation in programmer preferences.
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 153231b5-9f2e-4b23-be99-babbd231e2e7Cited by top-tier papers22
- Grounded Copilot: How Programmers Interact with Code-Generating ModelsShraddha Barke, Michael B. James, Nadia PolikarpovaOOPSLA 2023 · 408 citations
- Ivie: Lightweight Anchored Explanations of Just-Generated CodeLitao Yan, Alyssa Hwang, Zhiyuan Wu, Andrew HeadCHI 2024 · 40 citations
- Exploring the Learnability of Program Synthesizers by Novice ProgrammersDhanya Jayagopal, Justin Lubin, Sarah E. ChasinsUIST 2022 · 40 citations
- Filling typed holes with live GUIsCyrus Omar, David Moon, Andrew Blinn, Ian Voysey et al.PLDI 2021 · 35 citations
- Validating AI-Generated Code with Live ProgrammingKasra Ferdowsi, Ruanqianqian (Lisa) Huang, Michael B. James, Nadia Polikarpova et al.CHI 2024 · 27 citations
Related papers
- Focused Live Programming with Loop SeedsSorin LernerUIST 2020 · 6 citations
- Small-Step Live Programming by ExampleKasra Ferdowsifard, Allen Ordookhanians, Hila Peleg, Sorin Lerner et al.UIST 2020 · 40 citations
- LooPy: interactive program synthesis with control structuresKasra Ferdowsifard, Shraddha Barke, Hila Peleg, Sorin Lerner et al.OOPSLA 2021 · 18 citations
- Live Verification in an Interactive Proof AssistantSamuel Gruetter, Viktor Fukala, Adam ChlipalaPLDI 2024 · 3 citations
- Lorgnette: Creating Malleable Code ProjectionsCamille Gobert, Michel Beaudouin-LafonUIST 2023 · 13 citations
