Denicek: Computational Substrate for Document-Oriented End-User Programming
Tomas Petricek, Jonathan Edwards
摘要
User-centric programming research gave rise to a variety of compelling programming experiences, including collaborative source code editing, programming by demonstration, incremental recomputation, schema change control, end-user debugging and concrete programming. Those experiences advance the state of the art of end-user programming, but they are hard to implement on the basis of established programming languages and system. We contribute Denicek, a computational substrate that simplifies the implementation of the above programming experiences. Denicek represents a program as a series of edits that construct and transform a document consisting of data and formulas. Denicek provides three operations on edit histories: edit application, merging of histories and conflict resolution. Many programming experiences can be easily implemented by composing these three operations. We present the architecture of Denicek, discuss key design considerations and elaborate the implementation of a variety of programming experiences. To evaluate the proposed substrate, we use Denicek to develop an innovative interactive data science notebook system. The case study shows that the Denicek computational substrate provides a suitable basis for the design of rich, interactive end-user programming systems.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper17
- Wrex: A Unified Programming-by-Example Interaction for Synthesizing Readable Code for Data ScientistsIan Drosos, Titus Barik, Philip J. Guo, Robert DeLine 等CHI 2020 · 被引用 110 次
- On the Design of AI-powered Code Assistants for NotebooksAndrew M. McNutt, Chenglong Wang, Robert A. DeLine, Steven Mark DruckerCHI 2023 · 被引用 78 次
- Rapido: Prototyping Interactive AR Experiences through Programming by DemonstrationGermán Leiva, Jens Emil Grønbæk, Clemens Nylandsted Klokmose, Cuong Nguyen 等UIST 2021 · 被引用 58 次
- Projection Boxes: On-the-fly Reconfigurable Visualization for Live ProgrammingSorin LernerCHI 2020 · 被引用 52 次
- Filling typed holes with live GUIsCyrus Omar, David Moon, Andrew Blinn, Ian Voysey 等PLDI 2021 · 被引用 35 次
相关 Paper
- Programming By Scaffolded Demonstration with PerpendAngela Bi, Eric Rawn, Justin Lubin, Sarah E. ChasinsCHI 2026 · 被引用 2 次
- Imprimer: Computational Notebooks for CNC MillingJasper Tran O'Leary, Gabrielle Benabdallah, Nadya PeekCHI 2023 · 被引用 31 次
- Multiverse Notebook: Shifting Data Scientists to Time TravelersShigeyuki Sato, Tomoki NakamaruOOPSLA 2024 · 被引用 3 次
- Varv: Reprogrammable Interactive Software as a Declarative Data StructureMarcel Borowski, Luke Murray, Rolf Bagge, Janus Bager Kristensen 等CHI 2022 · 被引用 24 次
- Sculpin: Direct-Manipulation Transformation of JSONJoshua Horowitz, Devamardeep Hayatpur, Haijun Xia, Jeffrey HeerUIST 2025 · 被引用 1 次
