Filters








10,434 Hits in 5.1 sec

Type-Directed Program Synthesis for RESTful APIs [article]

Zheng Guo, David Cao, Davin Tjong, Jean Yang, Cole Schlesinger, Nadia Polikarpova
2022 pre-print
We present APIphany, a component-based synthesizer for programs that compose calls to RESTful APIs.  ...  types; (2) an efficient synthesis technique for "wrangling" semi-structured data, which is commonly required in working with RESTful APIs; and (3) a new form of simulated execution to avoid executing  ...  Acknowledgments The authors would like to thank the anonymous reviewers, our shepherd Yuepeng Wang, as well as Hila Peleg and Ilya Sergey for their valuable feedback on earlier drafts of this paper.  ... 
doi:10.1145/3519939.3523450 arXiv:2203.16697v1 fatcat:6p6hwbzpavezthwzma56vhgita

Component-based synthesis for complex APIs

Yu Feng, Ruben Martins, Yuepeng Wang, Isil Dillig, Thomas W. Reps
2017 SIGPLAN notices  
In this paper, we present a novel type-directed algorithm for component-based synthesis.  ...  Component-based approaches to program synthesis assemble programs from a database of existing components, such as methods provided by an API.  ...  Acknowledgments We thank Thomas Dillig, Navid Yaghmazadeh, Arati Kaushik, Osbert Bastani, Zhao Song and David Melski for their insightful comments.  ... 
doi:10.1145/3093333.3009851 fatcat:kezp55zfhvgzfmelo36fsahupe

Component-based synthesis for complex APIs

Yu Feng, Ruben Martins, Yuepeng Wang, Isil Dillig, Thomas W. Reps
2017 Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages - POPL 2017  
In this paper, we present a novel type-directed algorithm for component-based synthesis.  ...  Component-based approaches to program synthesis assemble programs from a database of existing components, such as methods provided by an API.  ...  Acknowledgments We thank Thomas Dillig, Navid Yaghmazadeh, Arati Kaushik, Osbert Bastani, Zhao Song and David Melski for their insightful comments.  ... 
doi:10.1145/3009837.3009851 fatcat:h5t5u6fhejfprf3soxqknu4vga

SmartSynth

Vu Le, Sumit Gulwani, Zhendong Su
2013 Proceeding of the 11th annual international conference on Mobile systems, applications, and services - MobiSys '13  
from the Natural Language Processing community; and (2) It uses techniques from the Program Synthesis community to infer missing dataflow relations via typebased synthesis and constructs scripts in a  ...  This paper presents SmartSynth, a novel end-to-end programming system for synthesizing smartphone automation scripts from natural language descriptions. Our approach is unique in two key aspects.  ...  Acknowledgments We would like to thank our shepherd, Deepak Ganesan, and the anonymous MobiSys reviewers for valuable feedback on earlier drafts of this paper.  ... 
doi:10.1145/2462456.2464443 dblp:conf/mobisys/LeGS13 fatcat:t5xs7mr3cfecdiyjtmqaplnz6a

Comprehensive Integration of API Usage Patterns [article]

Qi Shen, Shijun Wu, Yanzhen Zou, Bing Xie
2021 arXiv   pre-print
We find the expressions for variable synthesis is often non-trivial and can be divided into 5 syntax types.  ...  Nowadays, developers often reuse existing APIs to implement their programming tasks. A lot of API usage patterns are mined to help developers learn API usage rules.  ...  ACKNOWLEDGEMENT This work is supported in part by the General Program of National Natural Science Foundation of China (61972006).  ... 
arXiv:2103.11683v1 fatcat:gn6lhsvg7je2peuwint67zfpye

Neural Sketch Learning for Conditional Program Generation [article]

Vijayaraghavan Murali, Letao Qi, Swarat Chaudhuri, Chris Jermaine
2018 arXiv   pre-print
We study the problem of generating source code in a strongly typed, Java-like programming language, given a label (for example a set of API calls or types) carrying a small amount of information about  ...  We implement our ideas in a system for generating API-heavy Java code, and show that it can often predict the entire body of a method given just a few API calls or data types that appear in the method.  ...  Our method of doing so is a type-directed, stochastic search procedure that builds on combinatorial methods for program synthesis (Schkufza et al., 2016; Feser et al., 2015) .  ... 
arXiv:1703.05698v5 fatcat:rffmoge2kjbjljlv3zfbj54cpq

SWIM

Mukund Raghothaman, Yi Wei, Youssef Hamadi
2016 Proceedings of the 38th International Conference on Software Engineering - ICSE '16  
to synthesis.  ...  Modern programming frameworks come with large libraries, with diverse applications such as for matching regular expressions, parsing XML files and sending email.  ...  ACKNOWLEDGEMENTS The authors would like to thank Abhishek Udupa for suggesting the tool name swim.  ... 
doi:10.1145/2884781.2884808 dblp:conf/icse/RaghothamanWH16 fatcat:quvcusu6v5hl5jqormmcqzmcxy

Programmatic Compilation of Chemical Data and Literature from PubChem using MATLAB

Vincent Scalfani
2020 2018 Winter Chemical Engineering Education Journal  
VFS thanks ChemAxon for the MarvinSketch academic research license.  ...  ACKNOWLEDGMENTS JEB acknowledges NSF CBET 1605411 for support of this work. We thank the NIH/NLM/NCBI PubChem staff for their timely helpful responses to our programmatic access questions.  ...  Every PUG-REST URL request starts with the same base prefix: https://pubchem.ncbi.nlm.nih.gov/rest/pug For clarity, we will abbreviate this prefix as [api]: [api] = https://pubchem.ncbi.nlm.nih.gov/rest  ... 
doi:10.18260/2-1-370.660-115508 fatcat:xvfi6fuk4vfkrfprsivzfzb7wq

A Methodology of Guiding Web Content Mining and Knowledge Discovery in Evidence-based Software Engineering [article]

Zheng Li, Yan Liu
2017 arXiv   pre-print
Systematic Literature Review (SLR) is a rigorous methodology applied for Evidence-Based Software Engineering (EBSE) that identify, assess and synthesize the relevant evidence for answering specific research  ...  Thus the direct adoption of Web knowledge in EBSE lacks of systematic guidelines. In this paper, we propose to make an SLR adaptation to bridge the aforementioned gap along two stages.  ...  Replaceable Text Mining Techniques for Data synthesis Although there are various information types online, text is still the most commonly used type of unstructured Web information [8, 13] .  ... 
arXiv:1704.07551v1 fatcat:hs556kummzbodfk3ovexnb7zv4

From API to NLI: A New Interface for Library Reuse [article]

Qi Shen, Shijun Wu, Yanzhen Zou, Zixiao Zhu, Bing Xie
2020 arXiv   pre-print
The evaluation shows our tool can generate a high-quality natural language interface and save half of the coding time for newcomers to solve real-world programming tasks.  ...  each functional feature, and a synthesizer to complete code patterns into well-typed snippets.  ...  Acknowledgment This paper is supported by National Natural Science Fund for Distinguished Young Scholars (No. 61525201) and General Program of National Natural Science Foundation of China (61972006).  ... 
arXiv:2007.03305v1 fatcat:2yl43mvkebactbl3sdgc6q2dbe

Synthesizing framework models for symbolic execution

Jinseong Jeon, Xiaokang Qiu, Jonathan Fetter-Degges, Jeffrey S. Foster, Armando Solar-Lezama
2016 Proceedings of the 38th International Conference on Software Engineering - ICSE '16  
Pasket takes as input class, method, and type information from the framework API, together with tutorial programs that exercise the framework.  ...  We evaluated Pasket by synthesizing models for subsets of Swing and Android.  ...  Acknowledgments Supported in part by NSF CCF-1139021, CCF-1139056, CCF-1161775, and the partnership between UMIACS and the Laboratory for Telecommunication Sciences.  ... 
doi:10.1145/2884781.2884856 dblp:conf/icse/JeonQFFS16 fatcat:y3kzcpxfpbh7rg6iiwvytiy6be

An Update on Deductive Synthesis and Repair in the Leon Tool

Manos Koukoutos, Etienne Kneuss, Viktor Kuncak
2016 Electronic Proceedings in Theoretical Computer Science  
We describe new techniques, including a more precise mechanism for encoding the space of meaningful candidate programs.  ...  Our techniques increase the scope of synthesis by expanding the space of programs we can synthesize and by reducing the synthesis time in many cases.  ...  The synthesizer is in dialogue with the programmer to eliminate ambiguities in the generated programs. Finally, a direction of work has been synthesizing snippets that interact with APIs.  ... 
doi:10.4204/eptcs.229.9 fatcat:3xylo4xx5rajtokwn5wepwqjqq

Bridging the Gap Between General-Purpose and Domain-Specific Compilers with Synthesis

Alvin Cheung, Shoaib Kamil, Armando Solar-Lezama, Marc Herbstritt
2015 Summit on Advances in Programming Languages  
ACM Subject Classification I.2.2 Program Synthesis  ...  By leveraging general synthesis technology, it is possible to have a generic kernel translator that can be specialized by compiler developers for each domainspecific compiler, making it easy to build new  ...  In the rest of this paper, we first briefly describe constraint-based synthesis in Sec. 2 and outline the proposed architecture of Herd in Sec. 3.  ... 
doi:10.4230/lipics.snapl.2015.51 dblp:conf/snapl/CheungKS15 fatcat:lqcelmyyfrcmhatjowolqgdihi

Building Complete Heterogeneous Systems-on-Chip in C: From Hardware Accelerators to CPUs

Qilin Si, Santosh Shetty, Benjamin Carrion Schaefer
2021 Electronics  
High-Level Synthesis (HLS) dramatically accelerates the design and verification of individual components within larger VLSI systems.  ...  Thirdly, it allows generating different SoC variants quickly by only changing the HLS synthesis options. Experimental results highlight these benefits.  ...  AMBA AHB-Lite was selected for the SoCs with only one master and AMBA AHB for the rest.  ... 
doi:10.3390/electronics10141746 fatcat:roigcuzeyve2rl24btmahnczcu

A large-scale study on repetitiveness, containment, and composability of routines in open-source projects

Anh Tuan Nguyen, Hoan Anh Nguyen, Tien N. Nguyen
2016 Proceedings of the 13th International Workshop on Mining Software Repositories - MSR '16  
For each method in a project, we build the program dependency graph (PDG) to represent a routine, and compare PDGs with one another as well as the subgraphs within them.  ...  We collected 8,764,971 unique subroutines (with 323,564 unique JDK subroutines) as basic units for code searching/synthesis. We also provide practical implications of our findings to automated tools.  ...  This result at the subroutines provides a promising foundation on which the program synthesis approaches can rest.  ... 
doi:10.1145/2901739.2901759 dblp:conf/msr/NguyenNN16 fatcat:3ubafjriqnahvpt7hnu6cz7fau
« Previous Showing results 1 — 15 out of 10,434 results