Assuage: Assembly Synthesis Using A Guided Exploration
Jingmei Hu, Priyan Vaithilingam, Stephen Chong, Margo I. Seltzer, Elena L. Glassman
Abstract
Assembly programming is challenging, even for experts. Program synthesis, as an alternative to manual implementation, has the potential to enable both expert and non-expert users to generate programs in an automated fashion. However, current tools and techniques are unable to synthesize assembly programs larger than a few instructions. We present Assuage: ASsembly Synthesis Using A Guided Exploration, which is a parallel interactive assembly synthesizer that engages the user as an active collaborator, enabling synthesis to scale beyond current limits. Using Assuage, users can provide two types of semantically meaningful hints that expedite synthesis and allow for exploration of multiple possibilities simultaneously. Assuage exposes information about the underlying synthesis process using multiple representations to help users guide synthesis. We conducted a within-subjects study with twenty-one participants working on assembly programming tasks. With Assuage, participants with a wide range of expertise were able to achieve significantly higher success rates, perceived less subjective workload, and preferred the usefulness and usability of Assuage over a state of the art synthesis tool.
CCS Concepts: • Human-centered computing → Interactive systems and tools; • Software and its engineering → Automatic programming.
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 ecc42696-b55b-403d-a6f4-56bf2dff5139Cited by top-tier papers7
- Exploring the Learnability of Program Synthesizers by Novice ProgrammersDhanya Jayagopal, Justin Lubin, Sarah E. ChasinsUIST 2022 · 40 citations
- PyDex: Repairing Bugs in Introductory Python Assignments using LLMsJialu Zhang, José Pablo Cambronero, Sumit Gulwani, Vu Le et al.OOPSLA 2024 · 38 citations
- SQLucid: Grounding Natural Language Database Queries with Interactive ExplanationsYuan Tian, Jonathan K. Kummerfeld, Toby Jia-Jun Li, Tianyi ZhangUIST 2024 · 13 citations
- INTENT: Interactive Tensor Transformation SynthesisZhanhui Zhou, Man To Tang, Qiping Pan, Shangyin Tan et al.UIST 2022 · 8 citations
- AsFuzzer: Differential Testing of Assemblers with Error-Driven Grammar InferenceHyungseok Kim, Soomin Kim, Jungwoo Lee, Sang Kil ChaISSTA 2024 · 2 citations
Builds on3
- Wrex: A Unified Programming-by-Example Interaction for Synthesizing Readable Code for Data ScientistsIan Drosos, Titus Barik, Philip J. Guo, Robert DeLine et al.CHI 2020 · 110 citations
- Interactive Program Synthesis by Augmented ExamplesTianyi Zhang, London Lowmanstone, Xinyu Wang, Elena L. GlassmanUIST 2020 · 57 citations
- Interpretable Program SynthesisTianyi Zhang, Zhiyang Chen, Yuanli Zhu, Priyan Vaithilingam et al.CHI 2021 · 25 citations
Related papers
- Absynthe: Abstract Interpretation-Guided SynthesisSankha Narayan Guria, Jeffrey S. Foster, David Van HornPLDI 2023 · 6 citations
- Just-in-time learning for bottom-up enumerative synthesisShraddha Barke, Hila Peleg, Nadia PolikarpovaOOPSLA 2020 · 33 citations
- Combining the top-down propagation and bottom-up enumeration for inductive program synthesisWoosuk LeePOPL 2021 · 34 citations
- Semantics-guided synthesisJinwoo Kim, Qinheping Hu, Loris D'Antoni, Thomas W. RepsPOPL 2021 · 31 citations
- Choose, Don't Label: Multiple-Choice Query Synthesis for Program DisambiguationCeleste Barnaby, Danny Ding, Osbert Bastani, Isil DilligPLDI 2026
