PLDI 2025
Mon 16 - Fri 20 June 2025 Seoul, South Korea

This program is tentative and subject to change.

Thu 19 Jun 2025 10:30 - 10:50 at Grand Ball Room 2 - Software Engineering

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 <i>patch</i> component, which modifies the program based on a GUI interaction, and (2) a <i>forward evaluator</i>, 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 &lt;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 <i>patch</i> component (<b><code>patch</code></b>) with a corresponding <i>reconciliation</i> component (<b><code>recon</code></b>). <b><code>recon</code></b> directly updates the program <i>output</i> in response to a GUI interaction, obviating the need for forward evaluation.

We introduce corresponding <b><code>patch</code></b> and <b><code>recon</code></b> procedures for the domain of geospatial data visualization and prove them sound—that is, we show that the output produced by <b><code>recon</code></b> is identical to the output produced by forward-evaluating a <b><code>patch</code></b>-modified program. <b><code>recon</code></b> can operate both incrementally and in parallel with <b><code>patch</code></b>. Our implementation of our <b><code>patch</code></b>-<b><code>recon</code></b> instantiation achieves a 2.92x median reduction in interface latency compared to forward evaluation on a suite of real-world geospatial visualization tasks. Looking forward, our results suggest that <i>patch-reconciliation correspondence</i> offers a promising pathway for extending direct manipulation programming to domains involving large-scale computation.

This program is tentative and subject to change.

Thu 19 Jun

Displayed time zone: Seoul change

10:30 - 12:10
10:30
20m
Talk
Fast Direct Manipulation Programming with Patch-Reconciliation Correspondence
PLDI Research Papers
Parker Ziegler University of California at Berkeley, Justin Lubin University of California at Berkeley, Sarah E. Chasins University of California at Berkeley
DOI
10:50
20m
Talk
An Interactive Debugger for Rust Trait Errors
PLDI Research Papers
Gavin Gray Brown University, Will Crichton Brown University, Shriram Krishnamurthi Brown University
DOI Pre-print
11:10
20m
Talk
Spineless Traversal for Layout Invalidation
PLDI Research Papers
Marisa Kirisame University of Utah, Tiezhi Wang Tongji University, Pavel Panchekha University of Utah
DOI
11:30
20m
Talk
DR.FIX: Automatically Fixing Data Races at Industry Scale
PLDI Research Papers
Farnaz Behrang Uber Technologies, Zhizhou (Chris) Zhang Uber Technologies, Georgian-Vlad Saioc Aarhus University, Peng Liu Uber Technologies, Milind Chabbi Uber Technologies
DOI
11:50
20m
Talk
Program Skeletons for Automated Program Translation
PLDI Research Papers
Bo Wang National University of Singapore, Tianyu Li National University of Singapore, Ruishi Li National University of Singapore, Umang Mathur National University of Singapore, Prateek Saxena National University of Singapore
DOI Pre-print