Introduction

Nowadays, software projects are often managed and tracked by Version Control Systems. As a result, code changes implemented by developers are archived. This enables us to find and learn patterns from code changes. For example, merged pull requests allow us to observe edits made by developers before and after implementing meaningful code changes such as refactorings and bug-fixes activities. Motivated by this, researchers have recently designed Deep Learning techniques to capture the semantic and structure of edits. In short, the goal is to learn a DL model that can automatically produce semantically meaningful code changes.

Papers

In this session, we will be discussing this paper: [1]

Bibliography

[1]
T. Hoang, H. J. Kang, J. Lawall, and D. Lo, “CC2Vec: Distributed representations of code changes,” arXiv preprint arXiv:2003.05620, 2020.
[2]
M. Tufano, J. Pantiuchina, C. Watson, G. Bavota, and D. Poshyvanyk, “On learning meaningful code changes via neural machine translation,” in 2019 IEEE/ACM 41st international conference on software engineering (ICSE), 2019, pp. 25–36.
[3]
P. Yin, G. Neubig, M. Allamanis, M. Brockschmidt, and A. L. Gaunt, “Learning to represent edits,” arXiv preprint arXiv:1810.13337, 2018.
[4]
S. Chakraborty, Y. Ding, M. Allamanis, and B. Ray, “CODIT: Code editing with tree-based neural models,” IEEE Transactions on Software Engineering, 2020.