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 Xplore IEEE Proceedings Order Plans (POP) 1998-present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE/IET Electronic Library 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/eLvHCXMwlV1LSwMxEB7a4sFT1VZ8k4MHD6btZjeZ5CwWD1IKKvRW8ir0spU-BP-9s9m1InjxlJBLMgmZ78tkHgC3qrCZktFwh1ngBb0xuJYjy42QDhVagSakYhM4mejZzExbcL-PhYkxJuezOKi66S8_rPyuMpUN6bmmiM60oY2o6litvdZVRN2b1D1ZIYdC6yqIclC36lftlAQd4-7_Jj2C_k8MHpvu0eUYWrE8ge53EQbW3Mke3E1rDyv28lkSmdssNyy5AbCJTSk12HNjkezD2_jx9eGJN-UPuBUFbrmNRjjhUXotrJa0ikCKNY6cF0FZ75TETPjcuREptNwbh3kkQCIKZ2ifUeSn0ClXZTwD5k1GQBUlnYUtQmY10Qq7CNIvAhI44Tn0KsHn73WGi3kj88Xfw5dwSLRB1W5_V9DZrnfxGg78x3a5Wd-kY_kCCUaNIA |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1JSwMxFH7UKuipaivu5uDBg2lnMlkmZ7FUrEPBCr2VbIVeptJF8N_7ZrEiePGUkEvyEvK-Ly9vAbiV3MRSBE2tij3l-MagqYgM1UxYJZVhSvuy2ITKsnQy0aMG3G9jYUIIpfNZ6Bbd8i_fL9ymMJX18Lkmkc7swK7gnEVVtNZW70ok73XynpiLHkvTIoyyW7XyV_WUEjz6rf9Newidnyg8MtriyxE0Qn4Mre8yDKS-lW24G1U-VuT1M0c6t5qvSOkIQDJTJtUgw9om2YG3_uP4YUDrAgjUMK7W1ATNLHNKuJSZVOAqPKrWEFnHvDTOSqFi5hJrI1RpidNWJQEhCUmcxp1WLDmBZr7IwykQp2OEqiDwNAz3sUmRWJiZF27mFcKTOoN2Ifj0vcpxMa1lPv97-Ab2B-OX4XT4lD1fwAGSCFk5AV5Cc73chCvYcx_r-Wp5XR7RF5PikGc |
| 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 |