Program Synthesis Using Natural Language
Interacting with computers is a ubiquitous activity for millions of people. Repetitive or specialized tasks often require creation of small, often one-off, programs. End-users struggle with learning and using the myriad of domain-specific languages (DSLs) to effectively accomplish these tasks. We pr...
Uloženo v:
| Vydáno v: | Proceedings / International Conference on Software Engineering s. 345 - 356 |
|---|---|
| Hlavní autoři: | , , , , , , , |
| Médium: | Konferenční příspěvek |
| Jazyk: | angličtina |
| Vydáno: |
ACM
01.05.2016
|
| Témata: | |
| ISSN: | 1558-1225 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Abstract | Interacting with computers is a ubiquitous activity for millions of people. Repetitive or specialized tasks often require creation of small, often one-off, programs. End-users struggle with learning and using the myriad of domain-specific languages (DSLs) to effectively accomplish these tasks. We present a general framework for constructing program synthesizers that take natural language (NL) inputs and produce expressions in a target DSL. The framework takes as input a DSL definition and training data consisting of NL/DSL pairs. From these it constructs a synthesizer by learning optimal weights and classifiers (using NLP features) that rank the outputs of a keyword-programming based translation. We applied our framework to three domains: repetitive text editing, an intelligent tutoring system, and flight information queries. On 1200+ English descriptions, the respective synthesizers rank the desired program as the top-1 and top-3 for 80% and 90% descriptions respectively. |
|---|---|
| AbstractList | Interacting with computers is a ubiquitous activity for millions of people. Repetitive or specialized tasks often require creation of small, often one-off, programs. End-users struggle with learning and using the myriad of domain-specific languages (DSLs) to effectively accomplish these tasks. We present a general framework for constructing program synthesizers that take natural language (NL) inputs and produce expressions in a target DSL. The framework takes as input a DSL definition and training data consisting of NL/DSL pairs. From these it constructs a synthesizer by learning optimal weights and classifiers (using NLP features) that rank the outputs of a keyword-programming based translation. We applied our framework to three domains: repetitive text editing, an intelligent tutoring system, and flight information queries. On 1200+ English descriptions, the respective synthesizers rank the desired program as the top-1 and top-3 for 80% and 90% descriptions respectively. |
| Author | Hingorani, Vineet Karkare, Amey Marron, Mark Jain, Nidhi R., Sailesh Desai, Aditya Gulwani, Sumit Roy, Subhajit |
| Author_xml | – sequence: 1 givenname: Aditya surname: Desai fullname: Desai, Aditya email: adityapd@cse.iitk.ac.in organization: IIT Kanpur – sequence: 2 givenname: Sumit surname: Gulwani fullname: Gulwani, Sumit email: sumitg@microsoft.com organization: MSR Redmond – sequence: 3 givenname: Vineet surname: Hingorani fullname: Hingorani, Vineet email: viner@cse.iitk.ac.in organization: IIT Kanpur – sequence: 4 givenname: Nidhi surname: Jain fullname: Jain, Nidhi email: nidhij@cse.iitk.ac.in organization: IIT Kanpur – sequence: 5 givenname: Amey surname: Karkare fullname: Karkare, Amey email: karkare@cse.iitk.ac.in organization: IIT Kanpur – sequence: 6 givenname: Mark surname: Marron fullname: Marron, Mark email: marron@microsoft.com organization: MSR Redmond – sequence: 7 givenname: Sailesh surname: R. fullname: R., Sailesh email: sairaj@cse.iitk.ac.in organization: IIT Kanpur – sequence: 8 givenname: Subhajit surname: Roy fullname: Roy, Subhajit email: subhajit@cse.iitk.ac.in organization: IIT Kanpur |
| BookMark | eNotzD1PAkEQgOHVaCIgtYXNlTaHO7PfpSGiJhc1UWoyu4znGVjM7VHw7yXB6snbvGNxkXeZhbgBOQPQ5h69187D7KQ9E9NwTG2kUkFKOBcjMMbXgGiuxLiUHyml1SGMxN17v2t72lYfhzx8c-lKtSxdbqtXGvY9baqGcrunlq_F5RdtCk__nYjl4vFz_lw3b08v84emJtRuqIkDRkzOJI_kjbdhzRFYxoRrSyla4wCTilE6iyqF6BQrqcBCMNE5VBNxe_p2zLz67bst9YeV88cTWPUHMjRBYA |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| DBID | 6IE 6IH CBEJK RIE RIO |
| DOI | 10.1145/2884781.2884786 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Proceedings Order Plan (POP) 1998-present by volume IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP) 1998-present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 9781450339001 145033900X |
| EISSN | 1558-1225 |
| EndPage | 356 |
| ExternalDocumentID | 7886916 |
| Genre | orig-research |
| GroupedDBID | -~X .4S .DC 123 23M 29O 5VS 6IE 6IF 6IH 6IK 6IL 6IM 6IN 8US AAJGR AAWTH ABLEC ADZIZ AFFNX ALMA_UNASSIGNED_HOLDINGS APO ARCSS AVWKF BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO EDO FEDTE I-F I07 IEGSK IJVOP IPLJI M43 OCL RIE RIL RIO RNS XOL |
| ID | FETCH-LOGICAL-a247t-ae92b2c75c82a85869deb1e0bc2d6acb65712c3bb07623c9b73e30316195b7723 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 67 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000406138600032&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| IngestDate | Wed Aug 27 02:48:12 EDT 2025 |
| IsPeerReviewed | false |
| IsScholarly | true |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-a247t-ae92b2c75c82a85869deb1e0bc2d6acb65712c3bb07623c9b73e30316195b7723 |
| PageCount | 12 |
| ParticipantIDs | ieee_primary_7886916 |
| PublicationCentury | 2000 |
| PublicationDate | 2016-May |
| PublicationDateYYYYMMDD | 2016-05-01 |
| PublicationDate_xml | – month: 05 year: 2016 text: 2016-May |
| PublicationDecade | 2010 |
| PublicationTitle | Proceedings / International Conference on Software Engineering |
| PublicationTitleAbbrev | ICSE |
| PublicationYear | 2016 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| SSID | ssj0006499 |
| Score | 2.406224 |
| Snippet | Interacting with computers is a ubiquitous activity for millions of people. Repetitive or specialized tasks often require creation of small, often one-off,... |
| SourceID | ieee |
| SourceType | Publisher |
| StartPage | 345 |
| SubjectTerms | Automata Benchmark testing Domain Specific Languages DSL End-user Programming Natrual Language Programming Natural languages Program Synthesis Synthesizers Training Training data User Intent |
| Title | Program Synthesis Using Natural Language |
| URI | https://ieeexplore.ieee.org/document/7886916 |
| WOSCitedRecordID | wos000406138600032&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEB7a4sFT1VZ8k4MHD24feW7OYvEgy4IKvZVMNgu9bKUPwX_vbHatCF68JCGXSTJk5ptkHgC3wqKpk5AkTnpBBkqpEzTUqDJgUShEWfpYbMJkWTqf27wD9_tYmBBCdD4Lo3oY__KLld_VT2VjMtc0wZkudI3RTazWXupqgu5t6p6pVGOepnUQ5ajp9a_aKVF1zPr_I3oEw58YPJbvtcsxdEJ1Av3vIgysvZMDuMsbDyv28lkRmNssNyy6AbDMxZQa7Ll9kRzC2-zx9eEpacsfJI5Ls01csBy5N8qn3KWKVlGQYA0T9LzQzqNWZsq9QJyQQBOeDl0EUkgE4axCAs3iFHrVqgpnwEgNlUIXNVOstAGdTUuiIaaorCidPIdBvfHFe5PhYtHu-eLv6Us4JNigG7e_K-ht17twDQf-Y7vcrG8iW74AZUSOIQ |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV07T8MwED6VggRTgRbxxgMDA-nDr8QzoioiRJEoUrfKdhypS4qaFol_z8UJRUgsLLbl5WyffPedfQ-AW6ZMWCUhCTS3DA2UXAYmxEbkzmSZMIbn1hebCJMkms1U2oL7bSyMc847n7l-NfR_-dnSbqqnsgGaaxLhzA7sCs7psI7W2spdieC9Sd4z4mJAo6gKo-zXvfxVPcUrj3Hnf2QPofcThUfSrX45gpYrjqHzXYaBNLeyC3dp7WNFXj8LhHPloiTeEYAk2ifVIHHzJtmDt_Hj9GESNAUQAk15uA60U9RQGwobUR0JXEWGotUNjaWZ1NZIEY6oZcYMUaQxi8fOHKokBHFKGITN7ATaxbJwp0BQEeVMZhVbFFfOaBXlSIONjFAs1_wMutXG5-91jot5s-fzv6dvYH8yfYnn8VPyfAEHCCJk7QR4Ce31auOuYM9-rBfl6tqz6Av-hpFo |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=Proceedings+%2F+International+Conference+on+Software+Engineering&rft.atitle=Program+Synthesis+Using+Natural+Language&rft.au=Desai%2C+Aditya&rft.au=Gulwani%2C+Sumit&rft.au=Hingorani%2C+Vineet&rft.au=Jain%2C+Nidhi&rft.date=2016-05-01&rft.pub=ACM&rft.eissn=1558-1225&rft.spage=345&rft.epage=356&rft_id=info:doi/10.1145%2F2884781.2884786&rft.externalDocID=7886916 |