English
Related papers

Related papers: Comprehensive Integration of API Usage Patterns

200 papers

Developers rely on third-party library Application Programming Interfaces (APIs) when developing software. However, libraries typically come with assumptions and API usage constraints, whose violation results in API misuse. API misuses may…

Software Engineering · Computer Science 2026-04-17 Akalanka Galappaththi , Sarah Nadi , Christoph Treude

The fast-growing Web API landscape brings clients more options than ever before---in theory. In practice, they cannot easily switch between different providers offering similar functionality. We discuss a vision for developing Web APIs…

Software Engineering · Computer Science 2018-03-14 Ruben Verborgh , Michel Dumontier

Using APIs to develop software applications is the norm. APIs help developers to build applications faster as they do not need to reinvent the wheel. It is therefore important for developers to understand the APIs that they plan to use.…

Software Engineering · Computer Science 2023-04-06 Ferdian Thung , Kisub Kim , Ting Zhang , Ivana Clairine Irsan , Ratnadira Widyasari , Zhou Yang , David Lo

API suggestion is a critical task in modern software development, assisting programmers by predicting and recommending third-party APIs based on the current context. Recent advancements in large code models (LCMs) have shown promise in the…

Software Engineering · Computer Science 2024-09-23 Chaozheng Wang , Shuzheng Gao , Cuiyun Gao , Wenxuan Wang , Chun Yong Chong , Shan Gao , Michael R. Lyu

With the advent and proliferation of online developer forums as informal documentation, developers often share their opinions about the APIs they use. Thus, opinions of others often shape the developer's perception and decisions related to…

Software Engineering · Computer Science 2021-02-18 Gias Uddin , Olga Baysal , Latifa Guerrouj , Foutse Khomh

Object-oriented Application Programing Interfaces (APIs) support software reuse by providing pre-implemented functionalities. Due to the huge number of included classes, reusing and understanding large APIs is a complex task. Otherwise,…

Software Engineering · Computer Science 2016-06-03 Anas Shatnawi , Abdelhak Seriai , Houari Sahraoui , Zakarea Al-Shara

While many mainstream languages such as Java, Python, and C# increasingly incorporate functional APIs to simplify programming and improve parallelization/performance, there are no effective techniques that can be used to automatically…

Programming Languages · Computer Science 2022-03-21 Benjamin Mariano , Yanju Chen , Yu Feng , Greg Durrett , Isil Dillig

Large language models (LLMs), pre-trained or fine-tuned on large code corpora, have shown effectiveness in generating code completions. However, in LLM-based code completion, LLMs may struggle to use correct and up-to-date Application…

Software Engineering · Computer Science 2025-02-14 Chong Wang , Kaifeng Huang , Jian Zhang , Yebo Feng , Lyuye Zhang , Yang Liu , Xin Peng

For decades, mainframe systems have been vital in enterprise computing, supporting essential applications across industries like banking, retail, and healthcare. To harness these legacy applications and facilitate their reuse, there is…

Software Engineering · Computer Science 2024-08-09 Vini Kanvar , Srikanth Tamilselvam , Keerthi Narayan Raghunath

Reusing code is a common practice in software development: It helps developers speedup the implementation task while also reducing the chances of introducing bugs, given the assumption that the reused code has been tested, possibly in…

Software Engineering · Computer Science 2022-08-17 Rosalia Tufano , Emad Aghajani , Gabriele Bavota

Context. The last several years saw the emergence of AI assistants for code - multi-purpose AI-based helpers in software engineering. As they become omnipresent in all aspects of software development, it becomes critical to understand their…

Software Engineering · Computer Science 2024-11-08 Agnia Sergeyuk , Yaroslav Golubev , Timofey Bryksin , Iftekhar Ahmed

Developers increasingly rely on text matching tools to analyze the relation between natural language words and APIs. However, semantic gaps, namely textual mismatches between words and APIs, negatively affect these tools. Previous studies…

Software Engineering · Computer Science 2018-10-24 Xiaochen Li , He Jiang , Yasutaka Kamei , Xin Chen

Third-party libraries are a cornerstone of fast application development. To enable efficient use, libraries must provide a well-designed API. An obscure API instead slows down the learning process and can lead to erroneous use. The usual…

Software Engineering · Computer Science 2024-01-17 Lars Reimann , Günter Kniesel-Wünsche

Web APIs may have constraints on parameters, such that not all parameters are either always required or always optional. Moreover, the presence or value of one parameter could cause another parameter to be required, or parameters could have…

Software Engineering · Computer Science 2021-02-02 Henk Grent , Aleksei Akimov , Maurício Aniche

When learning to use an Application Programming Interface (API), programmers need to understand the inputs and outputs (I/O) of the API functions. Current documentation tools automatically document the static information of I/O, such as…

Software Engineering · Computer Science 2018-08-21 Siyuan Jiang , Ameer Armaly , Collin McMillan , Qiyu Zhi , Ronald Metoyer

Compound AI applications, which compose calls to ML models using a general-purpose programming language like Python, are widely used for a variety of user-facing tasks, from software engineering to enterprise automation, making their…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-19 Stephen Mell , David Mell , Konstantinos Kallas , Steve Zdancewic , Osbert Bastani

Code completion is one of the killer features of Integrated Development Environments (IDEs), and researchers have proposed different methods to improve its accuracy. While these techniques are valuable to speed up code writing, they are…

Software Engineering · Computer Science 2021-03-09 Fengcai Wen , Emad Aghajani , Csaba Nagy , Michele Lanza , Gabriele Bavota

We present DAPIP, a Programming-By-Example system that learns to program with APIs to perform data transformation tasks. We design a domain-specific language (DSL) that allows for arbitrary concatenations of API outputs and constant…

Artificial Intelligence · Computer Science 2017-04-17 Surya Bhupatiraju , Rishabh Singh , Abdel-rahman Mohamed , Pushmeet Kohli

Recent developments in the world of services on the Web show that both the number of available Web APIs as well as the applications built on top is constantly increasing. This trend is commonly attributed to the wide adoption of the REST…

Software Engineering · Computer Science 2019-02-28 Frederik Buelthoff , Maria Maleshkova

A key challenge in example-based program synthesis is the gigantic search space of programs. To address this challenge, various work proposed to use abstract interpretation to prune the search space. However, most of existing approaches…

Programming Languages · Computer Science 2023-04-24 Yongho Yoon , Woosuk Lee , Kwangkeun Yi