{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,4]],"date-time":"2026-06-04T16:01:10Z","timestamp":1780588870169,"version":"3.54.1"},"reference-count":61,"publisher":"Association for Computing Machinery (ACM)","issue":"POPL","license":[{"start":{"date-parts":[[2023,1,9]],"date-time":"2023-01-09T00:00:00Z","timestamp":1673222400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2023,1,9]]},"abstract":"<jats:p>Programming-by-Examples (PBE) involves synthesizing an \"intended program\" from a small set of user-provided input-output examples. A key PBE strategy has been to restrict the search to a carefully designed small domain-specific language (DSL) with \"effectively-invertible\" (EI) operators at the top and \"effectively-enumerable\" (EE) operators at the bottom. This facilitates an effective combination of top-down synthesis strategy (which backpropagates outputs over various paths in the DSL using inverse functions) with a bottom-up synthesis strategy (which propagates inputs over various paths in the DSL). We address the problem of scaling synthesis to large DSLs with several non-EI\/EE operators. This is motivated by the need to support a richer class of transformations and the need for readable code generation. We propose a novel solution strategy that relies on propagating fewer values and over fewer paths.<\/jats:p>\n          <jats:p>Our first key idea is that of \"cut functions\" that prune the set of values being propagated by using knowledge of the sub-DSL on the other side. Cuts can be designed to preserve completeness of synthesis; however, DSL designers may use incomplete cuts to have finer control over the kind of programs synthesized. In either case, cuts make search feasible for non-EI\/EE operators and efficient for deep DSLs. Our second key idea is that of \"guarded DSLs\" that allow a precedence on DSL operators, which dynamically controls exploration of various paths in the DSL. This makes search efficient over grammars with large fanouts without losing recall. It also makes ranking simpler yet more effective in learning an intended program from very few examples. Both cuts and precedence provide a mechanism to the DSL designer to restrict search to a reasonable, and possibly incomplete, space of programs.<\/jats:p>\n          <jats:p>Using cuts and gDSLs, we have built FlashFill++, an industrial-strength PBE engine for performing rich string transformations, including datetime and number manipulations. The FlashFill++ gDSL is designed to enable readable code generation in different target languages including Excel's formula language, PowerFx, and Python. We show FlashFill++ is more expressive, more performant, and generates better quality code than comparable existing PBE systems. FlashFill++ is being deployed in several mass-market products ranging from spreadsheet software to notebooks and business intelligence applications, each with millions of users.<\/jats:p>","DOI":"10.1145\/3571226","type":"journal-article","created":{"date-parts":[[2023,1,11]],"date-time":"2023-01-11T21:58:14Z","timestamp":1673474294000},"page":"952-981","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":22,"title":["FlashFill++: Scaling Programming by Example by Cutting to the Chase"],"prefix":"10.1145","volume":"7","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0713-6141","authenticated-orcid":false,"given":"Jos\u00e9","family":"Cambronero","sequence":"first","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9226-9634","authenticated-orcid":false,"given":"Sumit","family":"Gulwani","sequence":"additional","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3727-3291","authenticated-orcid":false,"given":"Vu","family":"Le","sequence":"additional","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0157-5506","authenticated-orcid":false,"given":"Daniel","family":"Perelman","sequence":"additional","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5559-5932","authenticated-orcid":false,"given":"Arjun","family":"Radhakrishna","sequence":"additional","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7453-2777","authenticated-orcid":false,"given":"Clint","family":"Simon","sequence":"additional","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5153-2686","authenticated-orcid":false,"given":"Ashish","family":"Tiwari","sequence":"additional","affiliation":[{"name":"Microsoft, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2023,1,11]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1016\/0304-3975(95)90680-J"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3183713.3196891"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/360933.360969"},{"key":"e_1_2_1_4_1","volume-title":"FMCAD","author":"Alur Rajeev","year":"2013","unstructured":"Rajeev Alur , Rastislav Bod\u00edk , Garvit Juniwal , Milo M. K. Martin , Mukund Raghothaman , Sanjit A. Seshia , Rishabh Singh , Armando Solar-Lezama , Emina Torlak , and Abhishek Udupa . 2013 . Syntax-Guided Synthesis. In Formal Methods in Computer-Aided Design , FMCAD 2013. 1\u20138. Rajeev Alur, Rastislav Bod\u00edk, Garvit Juniwal, Milo M. K. Martin, Mukund Raghothaman, Sanjit A. Seshia, Rishabh Singh, Armando Solar-Lezama, Emina Torlak, and Abhishek Udupa. 2013. Syntax-Guided Synthesis. In Formal Methods in Computer-Aided Design, FMCAD 2013. 1\u20138."},{"key":"e_1_2_1_5_1","doi-asserted-by":"crossref","unstructured":"Rajeev Alur Arjun Radhakrishna and Abhishek Udupa. 2017. Scaling Enumerative Program Synthesis via Divide and Conquer. In TACAS. 319\u2013336. \t\t\t\t  Rajeev Alur Arjun Radhakrishna and Abhishek Udupa. 2017. Scaling Enumerative Program Synthesis via Divide and Conquer. In TACAS. 319\u2013336.","DOI":"10.1007\/978-3-662-54577-5_18"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10009-008-0064-3"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-62950-5_74"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0304-3975(03)00314-1"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1561\/2500000049"},{"key":"e_1_2_1_10_1","unstructured":"Mark Chen Jerry Tworek Heewoo Jun Qiming Yuan Henrique Ponde de Oliveira Pinto Jared Kaplan Harrison Edwards Yuri Burda Nicholas Joseph Greg Brockman Alex Ray Raul Puri Gretchen Krueger Michael Petrov Heidy Khlaaf Girish Sastry Pamela Mishkin Brooke Chan Scott Gray Nick Ryder Mikhail Pavlov Alethea Power Lukasz Kaiser Mohammad Bavarian Clemens Winter Philippe Tillet Felipe Petroski Such Dave Cummings Matthias Plappert Fotios Chantzis Elizabeth Barnes Ariel Herbert-Voss William Hebgen Guss Alex Nichol Alex Paino Nikolas Tezak Jie Tang Igor Babuschkin Suchir Balaji Shantanu Jain William Saunders Christopher Hesse Andrew N. Carr Jan Leike Joshua Achiam Vedant Misra Evan Morikawa Alec Radford Matthew Knight Miles Brundage Mira Murati Katie Mayer Peter Welinder Bob McGrew Dario Amodei Sam McCandlish Ilya Sutskever and Wojciech Zaremba. 2021. Evaluating Large Language Models Trained on Code. CoRR abs\/2107.03374 (2021) arXiv:2107.03374. arxiv:2107.03374 \t\t\t\t  Mark Chen Jerry Tworek Heewoo Jun Qiming Yuan Henrique Ponde de Oliveira Pinto Jared Kaplan Harrison Edwards Yuri Burda Nicholas Joseph Greg Brockman Alex Ray Raul Puri Gretchen Krueger Michael Petrov Heidy Khlaaf Girish Sastry Pamela Mishkin Brooke Chan Scott Gray Nick Ryder Mikhail Pavlov Alethea Power Lukasz Kaiser Mohammad Bavarian Clemens Winter Philippe Tillet Felipe Petroski Such Dave Cummings Matthias Plappert Fotios Chantzis Elizabeth Barnes Ariel Herbert-Voss William Hebgen Guss Alex Nichol Alex Paino Nikolas Tezak Jie Tang Igor Babuschkin Suchir Balaji Shantanu Jain William Saunders Christopher Hesse Andrew N. Carr Jan Leike Joshua Achiam Vedant Misra Evan Morikawa Alec Radford Matthew Knight Miles Brundage Mira Murati Katie Mayer Peter Welinder Bob McGrew Dario Amodei Sam McCandlish Ilya Sutskever and Wojciech Zaremba. 2021. Evaluating Large Language Models Trained on Code. CoRR abs\/2107.03374 (2021) arXiv:2107.03374. arxiv:2107.03374"},{"key":"e_1_2_1_11_1","volume-title":"Proceedings of the 38th International Conference on Machine Learning, Marina Meila and Tong Zhang (Eds.) (Proceedings of Machine Learning Research","volume":"1672","author":"Chen Xinyun","year":"2021","unstructured":"Xinyun Chen , Petros Maniatis , Rishabh Singh , Charles Sutton , Hanjun Dai , Max Lin , and Denny Zhou . 2021 . SpreadsheetCoder: Formula Prediction from Semi-structured Context . In Proceedings of the 38th International Conference on Machine Learning, Marina Meila and Tong Zhang (Eds.) (Proceedings of Machine Learning Research , Vol. 139). PMLR, 1661\u2013 1672 . https:\/\/proceedings.mlr.press\/v139\/chen21m.html Xinyun Chen, Petros Maniatis, Rishabh Singh, Charles Sutton, Hanjun Dai, Max Lin, and Denny Zhou. 2021. SpreadsheetCoder: Formula Prediction from Semi-structured Context. In Proceedings of the 38th International Conference on Machine Learning, Marina Meila and Tong Zhang (Eds.) (Proceedings of Machine Learning Research, Vol. 139). PMLR, 1661\u20131672. https:\/\/proceedings.mlr.press\/v139\/chen21m.html"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.24963\/ijcai.2019\/841"},{"key":"e_1_2_1_13_1","volume-title":"Handbook of Theoretical Computer Science","author":"Dershowitz Nachum","unstructured":"Nachum Dershowitz and Jean-Pierre Jouannaud . 1990. Rewrite Systems . In Handbook of Theoretical Computer Science , Volume B: Formal Models and Semantics. Elsevier and MIT Press, 243\u2013 320 . Nachum Dershowitz and Jean-Pierre Jouannaud. 1990. Rewrite Systems. In Handbook of Theoretical Computer Science, Volume B: Formal Models and Semantics. Elsevier and MIT Press, 243\u2013320."},{"key":"e_1_2_1_14_1","volume-title":"Neural Program Meta-Induction","author":"Devlin Jacob","year":"2080","unstructured":"Jacob Devlin , Rudy Bunel , Rishabh Singh , Matthew J. Hausknecht , and Pushmeet Kohli . 2017. Neural Program Meta-Induction . In NIPS, Isabelle Guyon, Ulrike von Luxburg, Samy Bengio, Hanna M. Wallach, Rob Fergus, S. V. N. Vishwanathan, and Roman Garnett (Eds.). 2080 \u20132088. Jacob Devlin, Rudy Bunel, Rishabh Singh, Matthew J. Hausknecht, and Pushmeet Kohli. 2017. Neural Program Meta-Induction. In NIPS, Isabelle Guyon, Ulrike von Luxburg, Samy Bengio, Hanna M. Wallach, Rob Fergus, S. V. N. Vishwanathan, and Roman Garnett (Eds.). 2080\u20132088."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/3313831.3376442"},{"key":"e_1_2_1_16_1","doi-asserted-by":"crossref","first-page":"183","DOI":"10.1007\/BF00288747","article-title":"Ambiguity and Precedence in Syntax Description","volume":"4","author":"Earley Jay","year":"1974","unstructured":"Jay Earley . 1974 . Ambiguity and Precedence in Syntax Description . Acta Informatica , 4 (1974), 183 \u2013 192 . Jay Earley. 1974. Ambiguity and Precedence in Syntax Description. Acta Informatica, 4 (1974), 183\u2013192.","journal-title":"Acta Informatica"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3453483.3454089"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062351"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-18088-5_43"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/964001.964011"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.18653\/v1\/2021.acl-long.295"},{"key":"e_1_2_1_22_1","unstructured":"Google. 2021. SpreadSheetCoder. https:\/\/github.com\/google-research\/google-research\/tree\/master\/spreadsheet_coder \t\t\t\t  Google. 2021. SpreadSheetCoder. https:\/\/github.com\/google-research\/google-research\/tree\/master\/spreadsheet_coder"},{"key":"e_1_2_1_23_1","doi-asserted-by":"crossref","unstructured":"Sumit Gulwani. 2011. Automating string processing in spreadsheets using input-output examples. In POPL. 317\u2013330. \t\t\t\t  Sumit Gulwani. 2011. Automating string processing in spreadsheets using input-output examples. In POPL. 317\u2013330.","DOI":"10.1145\/1925844.1926423"},{"key":"e_1_2_1_24_1","unstructured":"Sumit Gulwani. 2016. Programming by Examples - and its applications in Data Wrangling. In Dependable Software Systems Engineering. 137\u2013158. \t\t\t\t  Sumit Gulwani. 2016. Programming by Examples - and its applications in Data Wrangling. In Dependable Software Systems Engineering. 137\u2013158."},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/2240236.2240260"},{"key":"e_1_2_1_26_1","volume-title":"Proc. ACM Conf. on Prgm. Lang. Desgn. and Impl. PLDI. 50\u201361","author":"Gulwani S.","unstructured":"S. Gulwani , V. Korthikanti , and A. Tiwari . 2011. Synthesizing geometry constructions . In Proc. ACM Conf. on Prgm. Lang. Desgn. and Impl. PLDI. 50\u201361 . S. Gulwani, V. Korthikanti, and A. Tiwari. 2011. Synthesizing geometry constructions. In Proc. ACM Conf. on Prgm. Lang. Desgn. and Impl. PLDI. 50\u201361."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1561\/2500000010"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/3371080"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/71605.71607"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/3385412.3386027"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/2535838.2535843"},{"key":"e_1_2_1_32_1","unstructured":"Ashwin Kalyan Abhishek Mohta Alex Polozov Dhruv Batra Prateek Jain and Sumit Gulwani. 2018. Neural-Guided Deductive Search for Real-Time Program Synthesis from Examples. In 6th International Conference on Learning Representations (ICLR) (6th international conference on learning representations (iclr) ed.). https:\/\/www.microsoft.com\/en-us\/research\/publication\/neural-guided-deductive-search-real-time-program-synthesis-examples\/ \t\t\t\t  Ashwin Kalyan Abhishek Mohta Alex Polozov Dhruv Batra Prateek Jain and Sumit Gulwani. 2018. Neural-Guided Deductive Search for Real-Time Program Synthesis from Examples. In 6th International Conference on Learning Representations (ICLR) (6th international conference on learning representations (iclr) ed.). https:\/\/www.microsoft.com\/en-us\/research\/publication\/neural-guided-deductive-search-real-time-program-synthesis-examples\/"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0022-0000(69)80011-5"},{"key":"e_1_2_1_34_1","doi-asserted-by":"crossref","unstructured":"Vu Le and Sumit Gulwani. 2014. FlashExtract: A Framework for Data Extraction by Examples. In PLDI. 542\u2013553. \t\t\t\t  Vu Le and Sumit Gulwani. 2014. FlashExtract: A Framework for Data Extraction by Examples. In PLDI. 542\u2013553.","DOI":"10.1145\/2666356.2594333"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/3434335"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3192366.3192410"},{"key":"e_1_2_1_37_1","volume-title":"Proceedings of the 27th International Conference on Machine Learning (ICML-10)","author":"Liang Percy","year":"2010","unstructured":"Percy Liang , Michael I. Jordan , and Dan Klein . 2010 . Learning Programs: A Hierarchical Bayesian Approach . In Proceedings of the 27th International Conference on Machine Learning (ICML-10) , Johannes F\u00fcrnkranz and Thorsten Joachims (Eds.). Omnipress, 639\u2013646. Percy Liang, Michael I. Jordan, and Dan Klein. 2010. Learning Programs: A Hierarchical Bayesian Approach. In Proceedings of the 27th International Conference on Machine Learning (ICML-10), Johannes F\u00fcrnkranz and Thorsten Joachims (Eds.). Omnipress, 639\u2013646."},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/3468264.3468533"},{"key":"e_1_2_1_39_1","volume-title":"Proceedings of the 30th International Conference on Machine Learning, ICML (JMLR Workshop and Conference Proceedings","volume":"195","author":"Menon Aditya Krishna","year":"2013","unstructured":"Aditya Krishna Menon , Omer Tamuz , Sumit Gulwani , Butler W. Lampson , and Adam Kalai . 2013 . A Machine Learning Framework for Programming by Example . In Proceedings of the 30th International Conference on Machine Learning, ICML (JMLR Workshop and Conference Proceedings , Vol. 28). JMLR.org, 187\u2013 195 . http:\/\/proceedings.mlr.press\/v28\/menon13.html Aditya Krishna Menon, Omer Tamuz, Sumit Gulwani, Butler W. Lampson, and Adam Kalai. 2013. A Machine Learning Framework for Programming by Example. In Proceedings of the 30th International Conference on Machine Learning, ICML (JMLR Workshop and Conference Proceedings, Vol. 28). JMLR.org, 187\u2013195. http:\/\/proceedings.mlr.press\/v28\/menon13.html"},{"key":"e_1_2_1_40_1","volume-title":"Proc. ACM Program. Lang., 2, POPL","author":"Miltner Anders","year":"2018","unstructured":"Anders Miltner , Kathleen Fisher , Benjamin C. Pierce , David Walker , and Steve Zdancewic . 2018 . Synthesizing bijective lenses . Proc. ACM Program. Lang., 2, POPL (2018), 1:1\u20131:30. Anders Miltner, Kathleen Fisher, Benjamin C. Pierce, David Walker, and Steve Zdancewic. 2018. Synthesizing bijective lenses. Proc. ACM Program. Lang., 2, POPL (2018), 1:1\u20131:30."},{"key":"e_1_2_1_41_1","unstructured":"Nagarajan Natarajan Danny Simmons Naren Datha Prateek Jain and Sumit Gulwani. 2019. Learning Natural Programs from a Few Examples in Real-Time. In AIStats. https:\/\/www.microsoft.com\/en-us\/research\/publication\/learning-natural-programs-from-a-few-examples-in-real-time\/ \t\t\t\t  Nagarajan Natarajan Danny Simmons Naren Datha Prateek Jain and Sumit Gulwani. 2019. Learning Natural Programs from a Few Examples in Real-Time. In AIStats. https:\/\/www.microsoft.com\/en-us\/research\/publication\/learning-natural-programs-from-a-few-examples-in-real-time\/"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/2737924.2738007"},{"key":"e_1_2_1_43_1","volume-title":"An Empirical Analysis. In 43rd IEEE\/ACM International Conference on Software Engineering, ICSE 2021","author":"Pan Rangeet","year":"2021","unstructured":"Rangeet Pan , Vu Le , Nachiappan Nagappan , Sumit Gulwani , Shuvendu K. Lahiri , and Mike Kaufman . 2021 . Can Program Synthesis be Used to Learn Merge Conflict Resolutions? An Empirical Analysis. In 43rd IEEE\/ACM International Conference on Software Engineering, ICSE 2021 , Madrid, Spain , 22-30 May 2021. IEEE, 785\u2013796. Rangeet Pan, Vu Le, Nachiappan Nagappan, Sumit Gulwani, Shuvendu K. Lahiri, and Mike Kaufman. 2021. Can Program Synthesis be Used to Learn Merge Conflict Resolutions? An Empirical Analysis. In 43rd IEEE\/ACM International Conference on Software Engineering, ICSE 2021, Madrid, Spain, 22-30 May 2021. IEEE, 785\u2013796."},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/2908080.2908093"},{"key":"e_1_2_1_45_1","doi-asserted-by":"crossref","unstructured":"Oleksandr Polozov and Sumit Gulwani. 2015. FlashMeta: A Framework for Inductive Program synthesis. In OOPSLA\/SPLASH. 107\u2013126. \t\t\t\t  Oleksandr Polozov and Sumit Gulwani. 2015. FlashMeta: A Framework for Inductive Program synthesis. In OOPSLA\/SPLASH. 107\u2013126.","DOI":"10.1145\/2858965.2814310"},{"key":"e_1_2_1_46_1","unstructured":"2021. PowerFx: The low code programming language. https:\/\/powerapps.microsoft.com\/en-us\/blog\/introducing-microsoft-power-fx-the-low-code-programming-language-for-everyone\/ Accessed: 2021-11-19 \t\t\t\t  2021. PowerFx: The low code programming language. https:\/\/powerapps.microsoft.com\/en-us\/blog\/introducing-microsoft-power-fx-the-low-code-programming-language-for-everyone\/ Accessed: 2021-11-19"},{"key":"e_1_2_1_47_1","unstructured":"Microsoft PROSE. 2022. PROSE public benchmark suite.  https:\/\/github.com\/microsoft\/prose-benchmarks \t\t\t\t  Microsoft PROSE. 2022. PROSE public benchmark suite.  https:\/\/github.com\/microsoft\/prose-benchmarks"},{"key":"e_1_2_1_48_1","volume-title":"Proc. ACM Program. Lang., 5, OOPSLA","author":"Rahmani Kia","year":"2021","unstructured":"Kia Rahmani , Mohammad Raza , Sumit Gulwani , Vu Le , Daniel Morris , Arjun Radhakrishna , Gustavo Soares , and Ashish Tiwari . 2021 . Multi-modal program inference: a marriage of pre-trained language models and component-based synthesis . Proc. ACM Program. Lang., 5, OOPSLA (2021), 1\u201329. Kia Rahmani, Mohammad Raza, Sumit Gulwani, Vu Le, Daniel Morris, Arjun Radhakrishna, Gustavo Soares, and Ashish Tiwari. 2021. Multi-modal program inference: a marriage of pre-trained language models and component-based synthesis. Proc. ACM Program. Lang., 5, OOPSLA (2021), 1\u201329."},{"key":"e_1_2_1_49_1","volume-title":"Learning syntactic program transformations from examples","author":"Rolim Reudismam","unstructured":"Reudismam Rolim , Gustavo Soares , Loris D\u2019Antoni , Oleksandr Polozov , Sumit Gulwani , Rohit Gheyi , Ryo Suzuki , and Bj\u00f6rn Hartmann . 2017. Learning syntactic program transformations from examples . In ICSE. IEEE \/ ACM , 404\u2013415. Reudismam Rolim, Gustavo Soares, Loris D\u2019Antoni, Oleksandr Polozov, Sumit Gulwani, Rohit Gheyi, Ryo Suzuki, and Bj\u00f6rn Hartmann. 2017. Learning syntactic program transformations from examples. In ICSE. IEEE \/ ACM, 404\u2013415."},{"key":"e_1_2_1_50_1","unstructured":"Selenium. 2022. Selenium. https:\/\/github.com\/SeleniumHQ\/selenium \t\t\t\t  Selenium. 2022. Selenium. https:\/\/github.com\/SeleniumHQ\/selenium"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1109\/VLHCC.2018.8506508"},{"key":"e_1_2_1_52_1","doi-asserted-by":"crossref","unstructured":"Rishabh Singh and Sumit Gulwani. 2015. Predicting a Correct Program in Programming by Example. In CAV. 398\u2013414. \t\t\t\t  Rishabh Singh and Sumit Gulwani. 2015. Predicting a Correct Program in Programming by Example. In CAV. 398\u2013414.","DOI":"10.1007\/978-3-319-21690-4_23"},{"key":"e_1_2_1_53_1","doi-asserted-by":"crossref","unstructured":"Calvin Smith and Aws Albarghouthi. 2019. Program Synthesis with Equivalence Reduction. In VMCAI Constantin Enea and Ruzica Piskac (Eds.). \t\t\t\t  Calvin Smith and Aws Albarghouthi. 2019. Program Synthesis with Equivalence Reduction. In VMCAI Constantin Enea and Ruzica Piskac (Eds.).","DOI":"10.1007\/978-3-030-11245-5_2"},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462174"},{"key":"e_1_2_1_55_1","volume-title":"CC 2002, Part of ETAPS, Proceedings (Lecture Notes in Computer Science","volume":"158","author":"van den Brand Mark","year":"2002","unstructured":"Mark van den Brand , Jeroen Scheerder , Jurgen J. Vinju , and Eelco Visser . 2002 . Disambiguation Filters for Scannerless Generalized LR Parsers. In Compiler Construction, 11th Intl. Conf , CC 2002, Part of ETAPS, Proceedings (Lecture Notes in Computer Science , Vol. 2304). Springer, 143\u2013 158 . Mark van den Brand, Jeroen Scheerder, Jurgen J. Vinju, and Eelco Visser. 2002. Disambiguation Filters for Scannerless Generalized LR Parsers. In Compiler Construction, 11th Intl. Conf, CC 2002, Part of ETAPS, Proceedings (Lecture Notes in Computer Science, Vol. 2304). Springer, 143\u2013158."},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/3485477"},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062365"},{"key":"e_1_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/3158151"},{"key":"e_1_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.14778\/3384345.3384350"},{"key":"e_1_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/3411764.3445646"},{"key":"e_1_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1145\/3379337.3415900"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3571226","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3571226","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T18:08:21Z","timestamp":1750183701000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3571226"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,1,9]]},"references-count":61,"journal-issue":{"issue":"POPL","published-print":{"date-parts":[[2023,1,9]]}},"alternative-id":["10.1145\/3571226"],"URL":"https:\/\/doi.org\/10.1145\/3571226","relation":{},"ISSN":["2475-1421"],"issn-type":[{"value":"2475-1421","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,1,9]]},"assertion":[{"value":"2023-01-11","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}