Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
Feedback-Directed Partial Execution
ISSTA 2024: Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and AnalysisSeptember 2024, Pages 781–793https://doi.org/10.1145/3650212.3680320Partial code execution is the problem of executing code with missing definitions. The problem has gained recent traction as solutions to the problem could enable various downstream analyses. We propose feedback-directed partial execution, a technique ...
- research-articleJune 2024
Non-Autoregressive Line-Level Code Completion
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 33, Issue 5Article No.: 120, Pages 1–34https://doi.org/10.1145/3649594Software developers frequently use code completion tools to accelerate software development by suggesting the following code elements. Researchers usually employ AutoRegressive (AR) decoders to complete code sequences in a left-to-right, token-by-token ...
- research-articleJanuary 2024
Syntax-aware on-the-fly code completion
Information and Software Technology (INST), Volume 165, Issue CJan 2024https://doi.org/10.1016/j.infsof.2023.107336Abstract Context:Code completion aims to help improve developers’ productivity by suggesting the next code tokens from a given context. Various approaches have been proposed to incorporate abstract syntax tree (AST) information for model training, ...
- research-articleFebruary 2024
Enhancing intelligent IoT services development by integrated multi-token code completion
Computer Communications (COMS), Volume 212, Issue CDec 2023, Pages 313–323https://doi.org/10.1016/j.comcom.2023.10.014AbstractThe Internet of Things (IoT) is a revolutionary network of interconnected devices embedded with sensors and software that enables seamless communication, data sharing, and intelligent decision-making in the form of IoT services. To facilitate the ...
Highlights- Code completion techniques in IoT service layer accelerate development and enhance intelligent sensing.
- Graph Neural Networks improve smaller language models for multi-token code completion.
- The S2RCC framework predicts code ...
- research-articleNovember 2023
How Practitioners Expect Code Completion?
ESEC/FSE 2023: Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software EngineeringNovember 2023, Pages 1294–1306https://doi.org/10.1145/3611643.3616280Code completion has become a common practice for programmers during their daily programming activities. It automatically predicts the next tokens or statements that the programmers may use. Code completion aims to substantially save keystrokes and ...
-
- research-articleOctober 2023
ARist: An effective API argument recommendation approach
Journal of Systems and Software (JSSO), Volume 204, Issue COct 2023https://doi.org/10.1016/j.jss.2023.111786AbstractLearning and remembering to use APIs are difficult. Several techniques have been proposed to assist developers in using APIs. Most existing techniques focus on recommending the right API methods to call, but very few techniques focus ...
Highlights- Argument recommendation is a very frequent but challenging task.
- Arguments must ...
- research-articleSeptember 2023
GitHub Copilot AI pair programmer: Asset or Liability?
- Arghavan Moradi Dakhel,
- Vahid Majdinasab,
- Amin Nikanjam,
- Foutse Khomh,
- Michel C. Desmarais,
- Zhen Ming (Jack) Jiang
Journal of Systems and Software (JSSO), Volume 203, Issue CSep 2023https://doi.org/10.1016/j.jss.2023.111734AbstractAutomatic program synthesis is a long-lasting dream in software engineering. Recently, a promising Deep Learning (DL) based solution, called Copilot, has been proposed by OpenAI and Microsoft as an industrial product. Although some ...
Graphical abstractDisplay Omitted
Highlights- We investigate the quality of the code Copilot generates as an AI pair programmer.
- research-articleMarch 2023
AdaComplete: improve DL-based code completion method’s domain adaptability
Automated Software Engineering (KLU-AUSE), Volume 30, Issue 1May 2023https://doi.org/10.1007/s10515-023-00376-yAbstractCode completion is an important feature in integrated development environments that can accelerate the coding process. With the development of deep learning technologies and easy-to-acquire open-source codebases, many Deep Learning based code ...
- research-articleNovember 2022
A methodology for refined evaluation of neural code completion approaches
Data Mining and Knowledge Discovery (DMKD), Volume 37, Issue 1Jan 2023, Pages 167–204https://doi.org/10.1007/s10618-022-00866-9AbstractCode completion has become an indispensable feature of modern Integrated Development Environments. In recent years, many approaches have been proposed to tackle this task. However, it is hard to compare between the models without explicitly re-...
- research-articleDecember 2022
Improving Code Completion by Sequence Features and Structural Features
WSSE '22: Proceedings of the 4th World Symposium on Software EngineeringSeptember 2022, Pages 51–58https://doi.org/10.1145/3568364.3568373Code completion is essential in integrated development environments (IDEs). It has also shown intelligence in helping developers to product. Recently, neural network-based models have helped improve code completion by capturing code information from ...
- research-articleJuly 2022
A unified multi-task learning model for AST-level and token-level code completion
Empirical Software Engineering (KLU-EMSE), Volume 27, Issue 4Jul 2022https://doi.org/10.1007/s10664-022-10140-7AbstractCode completion, one of the most useful features in the Integrated Development Environments (IDEs), can accelerate software development by suggesting the next probable tokens based on existing code in real-time. Recent studies have shown that ...
- ArticleNovember 2021
Code Autocomplete Using Transformers
AbstractIn software development, code autocomplete can be an essential tool in order to accelerate coding. However, many of these tools built into the IDEs are limited to suggesting only methods or arguments, often presenting to the user long lists of ...
- research-articleJune 2021
CCMC: Code Completion with a Memory Mechanism and a Copy Mechanism
EASE '21: Proceedings of the 25th International Conference on Evaluation and Assessment in Software EngineeringJune 2021, Pages 129–138https://doi.org/10.1145/3463274.3463332Code completion tools are increasingly important when developing modern software. Recently, statistical language modeling techniques have achieved great success in the code completion task. However, two major issues with these techniques severely affect ...
- research-articleNovember 2020
IntelliCode compose: code generation using transformer
ESEC/FSE 2020: Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software EngineeringNovember 2020, Pages 1433–1443https://doi.org/10.1145/3368089.3417058In software development through integrated development environments (IDEs), code completion is one of the most widely used features. Nevertheless, majority of integrated development environments only support completion of methods and APIs, or arguments. ...
- research-articleSeptember 2020
A Self-Attentional Neural Architecture for Code Completion with Multi-Task Learning
ICPC '20: Proceedings of the 28th International Conference on Program ComprehensionJuly 2020, Pages 37–47https://doi.org/10.1145/3387904.3389261Code completion, one of the most useful features in the Integrated Development Environments (IDEs), can accelerate software development by suggesting the libraries, APIs, and method names in real-time. Recent studies have shown that statistical language ...
- research-articleMarch 2019
JavaScript Code Suggestion Based on Deep Learning
ICIAI '19: Proceedings of the 2019 3rd International Conference on Innovation in Artificial IntelligenceMarch 2019, Pages 145–149https://doi.org/10.1145/3319921.3319922Code suggestion system is widely used in integrated development environments (IDEs) for generating code recommendations while editing to improve program efficiency. Current most common systems focus on the settings that complete a single code unit or ...
- research-articleSeptember 2017
Stepwise API usage assistance using n-gram language models
Journal of Systems and Software (JSSO), Volume 131, Issue CSeptember 2017, Pages 461–474https://doi.org/10.1016/j.jss.2016.06.063An IDE code completion mechanism for stepwise API exploration.A method for building a language model for supporting (1).a detailed evaluation of (2), showing how n-grams perform against existing client code.Results of (3) revealing a 90% chance of ...
- articleAugust 2014
Static type information to improve the IDE features of hybrid dynamically and statically typed languages
Journal of Visual Languages and Computing (JVLC), Volume 25, Issue 4August, 2014, Pages 346–362https://doi.org/10.1016/j.jvlc.2014.04.002The flexibility offered by dynamically typed programming languages has been appropriately used to develop specific scenarios where dynamic adaptability is an important issue. This has made some existing statically typed languages gradually incorporate ...
- ArticleJune 2014
Method-call recommendations from implicit developer feedback
CSI-SE 2014: Proceedings of the 1st International Workshop on CrowdSourcing in Software EngineeringJune 2014, Pages 5–6https://doi.org/10.1145/2593728.2593730When developers use the code completion in their Integrated Development Environment (IDE), they provide implicit feedback about the usage of the Application Programming Interfaces (APIs) they program against. We demonstrate how to apply Collaborative ...
- articleDecember 2011
Code completion of multiple keywords from abbreviated input
Automated Software Engineering (KLU-AUSE), Volume 18, Issue 3-4December 2011, Pages 363–398https://doi.org/10.1007/s10515-011-0083-2Abbreviation Completion is a novel technique to improve the efficiency of code-writing by supporting code completion of multiple keywords based on non-predefined abbreviated input--a different approach from conventional code completion that finds one ...