Fast Direct Manipulation Programming with Patch-Reconciliation Correspondence
Parker Ziegler, Justin Lubin, Sarah E. Chasins
摘要
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.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper2
- Programming By Scaffolded Demonstration with PerpendAngela Bi, Eric Rawn, Justin Lubin, Sarah E. ChasinsCHI 2026 · 被引用 2 次
- Direct Manipulation and Natural Language Programming, Together at Last?Parker Ziegler, David Minh-Duy Cao, Justin Lubin, Sarah E. ChasinsOOPSLA 2026
它引用的顶会 Paper8
- No Grammar to Rule Them All: A Survey of JSON-style DSLs for VisualizationAndrew M. McNuttIEEE VIS 2022 · 被引用 37 次
- Filling typed holes with live GUIsCyrus Omar, David Moon, Andrew Blinn, Ian Voysey 等PLDI 2021 · 被引用 35 次
- Weaving Schematics and Code: Interactive Visual Editing for Hardware Description LanguagesRichard Lin, Rohit Ramesh, Nikhil Jain, Josephine Koe 等UIST 2021 · 被引用 15 次
- Bidirectional Object-Oriented Programming: Towards Programmatic and Direct Manipulation of ObjectsXing Zhang, Guanchen Guo, Xiao He, Zhenjiang HuOOPSLA 2023 · 被引用 9 次
- Towards Bidirectional Live Programming for Incomplete ProgramsXing Zhang, Zhenjiang HuICSE 2022 · 被引用 8 次
相关 Paper
- DirectGPT: A Direct Manipulation Interface to Interact with Large Language ModelsDamien Masson, Sylvain Malacria, Géry Casiez, Daniel VogelCHI 2024 · 被引用 104 次
- Drawing Transforms: A Unifying Interaction Primitive to Procedurally Manipulate Graphics across Style, Space, and TimeSonia Hashim, Tobias Höllerer, Jennifer JacobsCHI 2023 · 被引用 11 次
- Fusing Direct Manipulations into Functional ProgramsXing Zhang, Ruifeng Xie, Guanchen Guo, Xiao He 等POPL 2024 · 被引用 5 次
- GeoProg3D: Compositional Visual Reasoning for City-Scale 3D Language FieldsShunsuke Yasuki, Taiki Miyanishi, Nakamasa Inoue, Shuhei Kurita 等ICCV 2025 · 被引用 1 次
- Glinda: Supporting Data Science with Live Programming, GUIs and a Domain-specific LanguageRobert DeLineCHI 2021 · 被引用 23 次
