Siri, Write the Next Method
This addresses the need for more advanced code completion tools for developers, though it is incremental as it builds on existing retrieval-based methods.
The paper tackles the problem of limited code completion in IDEs by introducing FeaRS, a retrieval-based approach that recommends complete methods instead of just tokens or APIs, achieving encouraging preliminary results in a large-scale evaluation across over 20k Android apps.
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 limited to recommendations related to the next few tokens a developer is likely to type given the current context. In the best case, they can recommend a few APIs that a developer is likely to use next. We present FeaRS, a novel retrieval-based approach that, given the current code a developer is writing in the IDE, can recommend the next complete method (i.e., signature and method body) that the developer is likely to implement. To do this, FeaRS exploits "implementation patterns" (i.e., groups of methods usually implemented within the same task) learned by mining thousands of open source projects. We instantiated our approach to the specific context of Android apps. A large-scale empirical evaluation we performed across more than 20k apps shows encouraging preliminary results, but also highlights future challenges to overcome.