Fast Direct Manipulation Programming with Patch-Reconciliation Correspondence
Parker Ziegler, Justin Lubin, Sarah E. Chasins
Abstract
Direct manipulation programming gives users a way to write programs without directly writing code, by using the familiar GUI-style interactions they know from direct manipulation interfaces. To date, direct manipulation programming systems have relied on two core components: (1) a patch component, which modifies the program based on a GUI interaction, and (2) a forward evaluator, which executes the modified program to produce an updated program output. This architecture has worked for developing short-running programs-i.e., programs that reliably execute in <1 second-generating outputs such as SVG and HTML documents. However, direct manipulation programming has not yet been applied to long-running programs (e.g., data visualization, mapping), perhaps because executing such programs in response to every GUI interaction would mean crossing outside of interactive speeds. We propose extending direct manipulation programming to long-running programs by pairing a standard patch component (patch) with a corresponding reconciliation component (recon). recon directly updates the program output in response to a GUI interaction, obviating the need for forward evaluation.
We introduce corresponding patch and recon procedures for the domain of geospatial data visualization and prove them sound-that is, we show that the output produced by recon is identical to the output produced by forward-evaluating a patch-modified program. recon can operate both incrementally and in parallel with patch. Our implementation of our patch-recon instantiation achieves a 2.92× median reduction in interface latency compared to forward evaluation on a suite of real-world geospatial visualization tasks. Looking forward, our results suggest that patch-reconciliation correspondence offers a promising pathway for extending direct manipulation programming to domains involving large-scale computation.
CCS Concepts: • Human-centered computing → User interface programming; • Software and its engineering → Graphical user interface languages; Integrated and visual development environments.
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 0f1a44d1-9449-464f-851a-31e642fd4850Cited by top-tier papers2
- Programming By Scaffolded Demonstration with PerpendAngela Bi, Eric Rawn, Justin Lubin, Sarah E. ChasinsCHI 2026 · 2 citations
- Direct Manipulation and Natural Language Programming, Together at Last?Parker Ziegler, David Minh-Duy Cao, Justin Lubin, Sarah E. ChasinsOOPSLA 2026
Builds on8
- No Grammar to Rule Them All: A Survey of JSON-style DSLs for VisualizationAndrew M. McNuttIEEE VIS 2022 · 37 citations
- Filling typed holes with live GUIsCyrus Omar, David Moon, Andrew Blinn, Ian Voysey et al.PLDI 2021 · 35 citations
- Weaving Schematics and Code: Interactive Visual Editing for Hardware Description LanguagesRichard Lin, Rohit Ramesh, Nikhil Jain, Josephine Koe et al.UIST 2021 · 15 citations
- Bidirectional Object-Oriented Programming: Towards Programmatic and Direct Manipulation of ObjectsXing Zhang, Guanchen Guo, Xiao He, Zhenjiang HuOOPSLA 2023 · 9 citations
- Towards Bidirectional Live Programming for Incomplete ProgramsXing Zhang, Zhenjiang HuICSE 2022 · 8 citations
Related papers
- DirectGPT: A Direct Manipulation Interface to Interact with Large Language ModelsDamien Masson, Sylvain Malacria, Géry Casiez, Daniel VogelCHI 2024 · 104 citations
- Drawing Transforms: A Unifying Interaction Primitive to Procedurally Manipulate Graphics across Style, Space, and TimeSonia Hashim, Tobias Höllerer, Jennifer JacobsCHI 2023 · 11 citations
- Fusing Direct Manipulations into Functional ProgramsXing Zhang, Ruifeng Xie, Guanchen Guo, Xiao He et al.POPL 2024 · 5 citations
- GeoProg3D: Compositional Visual Reasoning for City-Scale 3D Language FieldsShunsuke Yasuki, Taiki Miyanishi, Nakamasa Inoue, Shuhei Kurita et al.ICCV 2025 · 1 citation
- Glinda: Supporting Data Science with Live Programming, GUIs and a Domain-specific LanguageRobert DeLineCHI 2021 · 23 citations
