Code analysis and automatic program repair has been studied for a long time since high-level programming languages such as C language were invented in the 1970s. Traditional rule-based code analysis techniques and template-based automatic program repair methods have made a success on software development. Despite the widespread usage, there are also some intrinsic disadvantages such as false positives and low coverage identified in these techniques and hinder the further progress of modern software development. With the emergence of deep learning techniques in the natural language processing field, especially the great success of large language models, intelligent code analysis techniques are proposed and demonstrated to be more effective. In this talk, we take the most popular programming language Python as an example, to introduce our exploration of intelligent code analysis on two tasks: type inference and program repair for type errors.
Bio: Yun Peng is the 4th year PhD candidate in computer science at the Chinese University of Hong Kong (CUHK). He is advised by Prof. Michael R. Lyu. He received his bachelor’s degree at the School of the Gifted Young in the University of Science and Technology of China (USTC). His research interests are in the scope of software engineering. More specifically, he is interested in intelligent code analysis, such as type inference and API recommendation. He is also interested in software reliability and software ecosystem. He published multiple papers on top software engineering conferences such as ICSE, ESEC/FSE, ASE and top software engineering journals such as IEEE TSE. He received the ACM SIGSOFT Distinguished Paper Award at ASE’23, Distinguished Paper Award at the Industry Challenge Track of ASE’23, and the ACM SIGSOFT Distinguished Paper Award Nomination at ICSE’22. He also serves as reviewers for top software engineering journals such as IEEE TSE and ACM TOSEM.