Filling Typed Holes with Live GUIs
Although text editing is powerful, some types of expressions are more naturally represented and manipulated graphically. This paper introduces live literals, or livelits, which allow clients to fill holes of these types by directly manipulating a provider-defined GUI embedded persistently into otherwise symbolic code. Uniquely, livelits are compositional: the GUI can itself contain spliced expressions, which have full editor support and can in turn contain other livelits. Splices are typed and the system ensures that livelits treat splices hygienically. Livelits are also uniquely live: they can offer immediate feedback about the run-time implications of the client’s choices even when splices mention bound variables, because the system continuously gathers closures associated with the hole that the livelit is tasked with filling. This paper introduces livelits with case studies that exercise these novel capabilities. We implement livelits in Hazel, a live programming environment able to typecheck and run programs with holes. We then define a typed lambda calculus that captures the essence of livelits as live graphical macros. The macro expansion process has been mechanized in Agda.
Fri 22 OctDisplayed time zone: Central Time (US & Canada) change
13:50 - 15:10 | PLDI 2021 Papers 5SIGPLAN Papers at Zurich F Chair(s): Feras Saad Massachusetts Institute of Technology | ||
13:50 15mTalk | Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring SIGPLAN Papers Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University | ||
14:05 15mTalk | Scooter & Sidecar: A domain-specific approach to writing secure migrations SIGPLAN Papers John Renner University of California at San Diego, USA, Alex Sanchez-Stern University of California at San Diego, Fraser Brown Stanford University, USA, Sorin Lerner University of California at San Diego, Deian Stefan University of California at San Diego, USA | ||
14:20 15mTalk | Symbolic Boolean Derivatives for Efficiently Solving Extended Regular Expression Constraints SIGPLAN Papers Caleb Stanford University of Pennsylvania, Margus Veanes Microsoft, Nikolaj Bjørner Microsoft Research | ||
14:35 15mTalk | Filling Typed Holes with Live GUIs SIGPLAN Papers Cyrus Omar University of Michigan, David Moon University of Michigan, Andrew Blinn University of Michigan, Ian Voysey Carnegie Mellon University, Nick Collins University of Chicago, Ravi Chugh University of Chicago | ||
14:50 20mLive Q&A | Discussion, Questions and Answers SIGPLAN Papers |