SPT: Storyboard Programming Tool
We present Spt, a tool that helps programmers write low-level data-structure manipulations by combining various forms of insights such as abstract and concrete input-output examples as well as implementation skeletons. When programmers write such manipulations, they typically have a clear high-level...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Article |
Language: | en_US |
Published: |
Springer-Verlag
2014
|
Online Access: | http://hdl.handle.net/1721.1/90878 https://orcid.org/0000-0001-7604-8252 |
_version_ | 1811092896702529536 |
---|---|
author | Singh, Rishabh Solar-Lezama, Armando |
author2 | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory |
author_facet | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Singh, Rishabh Solar-Lezama, Armando |
author_sort | Singh, Rishabh |
collection | MIT |
description | We present Spt, a tool that helps programmers write low-level data-structure manipulations by combining various forms of insights such as abstract and concrete input-output examples as well as implementation skeletons. When programmers write such manipulations, they typically have a clear high-level intuition about how the manipulation should work, but implementing efficient low-level pointer manipulating code is error-prone. Our tool aims to bridge the gap between the intuition and the corresponding implementation by automatically synthesizing the implementation. The tool frames the synthesis problem as a generalization of an abstract-interpretation based shape analysis, and represents the problem as a set of constraints which are solved efficiently by the Sketch solver. We report the successful evaluation of our tool on synthesizing several linked list and binary search tree manipulations. |
first_indexed | 2024-09-23T15:33:30Z |
format | Article |
id | mit-1721.1/90878 |
institution | Massachusetts Institute of Technology |
language | en_US |
last_indexed | 2024-09-23T15:33:30Z |
publishDate | 2014 |
publisher | Springer-Verlag |
record_format | dspace |
spelling | mit-1721.1/908782022-09-29T14:52:35Z SPT: Storyboard Programming Tool Singh, Rishabh Solar-Lezama, Armando Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Singh, Rishabh Solar Lezama, Armando We present Spt, a tool that helps programmers write low-level data-structure manipulations by combining various forms of insights such as abstract and concrete input-output examples as well as implementation skeletons. When programmers write such manipulations, they typically have a clear high-level intuition about how the manipulation should work, but implementing efficient low-level pointer manipulating code is error-prone. Our tool aims to bridge the gap between the intuition and the corresponding implementation by automatically synthesizing the implementation. The tool frames the synthesis problem as a generalization of an abstract-interpretation based shape analysis, and represents the problem as a set of constraints which are solved efficiently by the Sketch solver. We report the successful evaluation of our tool on synthesizing several linked list and binary search tree manipulations. National Science Foundation (U.S.) (Grant CCF-1116362) 2014-10-10T12:54:24Z 2014-10-10T12:54:24Z 2012 Article http://purl.org/eprint/type/ConferencePaper 978-3-642-31423-0 978-3-642-31424-7 0302-9743 1611-3349 http://hdl.handle.net/1721.1/90878 Singh, Rishabh, and Armando Solar-Lezama. “SPT: Storyboard Programming Tool.” Lecture Notes in Computer Science (2012): 738–743. https://orcid.org/0000-0001-7604-8252 en_US http://dx.doi.org/10.1007/978-3-642-31424-7_58 Computer Aided Verification Creative Commons Attribution-Noncommercial-Share Alike http://creativecommons.org/licenses/by-nc-sa/4.0/ application/pdf Springer-Verlag MIT web domain |
spellingShingle | Singh, Rishabh Solar-Lezama, Armando SPT: Storyboard Programming Tool |
title | SPT: Storyboard Programming Tool |
title_full | SPT: Storyboard Programming Tool |
title_fullStr | SPT: Storyboard Programming Tool |
title_full_unstemmed | SPT: Storyboard Programming Tool |
title_short | SPT: Storyboard Programming Tool |
title_sort | spt storyboard programming tool |
url | http://hdl.handle.net/1721.1/90878 https://orcid.org/0000-0001-7604-8252 |
work_keys_str_mv | AT singhrishabh sptstoryboardprogrammingtool AT solarlezamaarmando sptstoryboardprogrammingtool |