English
Related papers

Related papers: Smart Paste: Automatically Fixing Copy/Paste for G…

200 papers

Gradual typing enables developers to annotate types of their own choosing, offering a flexible middle ground between no type annotations and a fully statically typed language. As more and more code bases get type-annotated, static type…

Software Engineering · Computer Science 2024-01-15 Yiu Wai Chow , Luca Di Grazia , Michael Pradel

The automatic generation of source code is one of the long-lasting dreams in software engineering research. Several techniques have been proposed to speed up the writing of new code. For example, code completion techniques can recommend to…

Software Engineering · Computer Science 2023-02-09 Matteo Ciniselli , Luca Pascarella , Emad Aghajani , Simone Scalabrino , Rocco Oliveto , Gabriele Bavota

CodeCompose is an AI-assisted code authoring tool powered by large language models (LLMs) that provides inline suggestions to 10's of thousands of developers at Meta. In this paper, we present how we scaled the product from displaying…

The size and complexity of software applications is increasing at an accelerating pace. Source code repositories (along with their dependencies) require vast amounts of labor to keep them tested, maintained, and up to date. As the…

Software Engineering · Computer Science 2024-06-14 Ivan R. Ivanov , Joachim Meyer , Aiden Grossman , William S. Moses , Johannes Doerfert

This study investigates whether assessments fostering higher-order thinking skills can reduce plagiarism involving generative AI tools. Participants completed three tasks of varying complexity in four groups: control, e-textbook, Google,…

Human-Computer Interaction · Computer Science 2024-12-19 Sacip Toker , Mahir Akgun

As of recent generative adversarial networks have allowed for big leaps in the realism of generated images in diverse domains, not the least of which being handwritten text generation. The generation of realistic-looking hand-written text…

Computer Vision and Pattern Recognition · Computer Science 2021-09-16 Alexander Mattick , Martin Mayr , Mathias Seuret , Andreas Maier , Vincent Christlein

When a developer is writing code they are usually focused and in a state-of-mind which some refer to as flow. Breaking out of this flow can cause the developer to lose their train of thought and have to start their thought process from the…

Software Engineering · Computer Science 2020-10-13 Tyson Bulmer , Lloyd Montgomery , Daniela Damian

During the life span of large software projects, developers often apply the same code changes to different code locations in slight variations. Since the application of these changes to all locations is time-consuming and error-prone, tools…

Software Engineering · Computer Science 2017-08-11 Georg Dotzler , Marius Kamp , Patrick Kreutzer , Michael Philippsen

Many applications today provide users with multiple auto-complete drafts as they type, including GitHub's code completion, Gmail's smart compose, and Apple's messaging auto-suggestions. Under the hood, language models support this by…

Modern computing students often rely on both natural-language prompting and manual code editing to solve programming tasks. Yet we still lack a clear understanding of how these two modes are combined in practice, and how their usage varies…

The rise of AI-driven coding assistants signals a fundamental shift in how software is built. While AI coding assistants have been integrated into existing Integrated Development Environments (IDEs), their full potential remains largely…

Software Engineering · Computer Science 2025-03-05 Raula Gaikovina Kula , Christoph Treude

Programmers have long ignored warnings, especially those generated by static analysis tools, due to the potential for false-positives. In some cases, warnings may be indicative of larger issues, but programmers may not understand how a…

Software Engineering · Computer Science 2025-05-20 Hansen Chang , Christian DeLozier

Improvements in the performance of computing systems, driven by Moore's Law, have transformed society. As such hardware-driven gains slow down, it becomes even more important for software developers to focus on performance and efficiency…

Software Engineering · Computer Science 2022-08-11 Binghong Chen , Daniel Tarlow , Kevin Swersky , Martin Maas , Pablo Heiber , Ashish Naik , Milad Hashemi , Parthasarathy Ranganathan

Generative AI (GenAI) holds significant promise for automating everyday image editing tasks, especially following the recent release of GPT-4o on March 25, 2025. However, what subjects do people most often want edited? What kinds of editing…

Computer Vision and Pattern Recognition · Computer Science 2025-05-27 Mohammad Reza Taesiri , Brandon Collins , Logan Bolton , Viet Dac Lai , Franck Dernoncourt , Trung Bui , Anh Totti Nguyen

Large language models (LLMs) have gained widespread popularity and have steadily improved over time, enabling software developers to use them for various code-related tasks. One common task is code refactoring, where the LLM suggests…

Software Engineering · Computer Science 2026-05-07 David Schön , Faiza Amjad , Tehreem Asif , Ranim Khojah , Mazen Mohamad , Francisco Gomes de Oliveira Neto , Philipp Leitner

IDE-integrated AI coding assistants, which operate conversationally within developers' working codebases with access to project context and multi-file editing, are rapidly reshaping software development. However, empirical investigation of…

Software Engineering · Computer Science 2026-04-02 Ningzhi Tang , Chaoran Chen , Zihan Fang , Gelei Xu , Maria Dhakal , Yiyu Shi , Collin McMillan , Yu Huang , Toby Jia-Jun Li

Code completion is a popular software development tool integrated into all major IDEs. Many neural language models have achieved promising results in completion suggestion prediction on synthetic benchmarks. However, a recent study When…

Software Engineering · Computer Science 2020-11-10 Gareth Ari Aye , Seohyun Kim , Hongyu Li

Source code repositories allow developers to manage multiple versions (or branches) of a software system. Pull-requests are used to modify a branch, and backporting is a regular activity used to port changes from a current development…

Software Engineering · Computer Science 2022-04-11 Debasish Chakroborti , Kevin A. Schneider , Chanchal K. Roy

AI-powered coding assistants are rapidly becoming fixtures in professional IDEs, yet their sustained influence on everyday development remains poorly understood. Prior research has focused on short-term use or self-reported perceptions,…

Software Engineering · Computer Science 2026-03-31 Agnia Sergeyuk , Eric Huang , Dariia Karaeva , Anastasiia Serova , Yaroslav Golubev , Iftekhar Ahmed

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