Code Understanding Linter to Detect Variable Misuse

被引:0
|
作者
Ryou, Yeonhee [1 ]
Joh, Sangwoo [1 ]
Yang, Joonmo [1 ]
Kim, Sujin [1 ]
Kim, Youil [1 ]
机构
[1] Samsung Res, Seoul, South Korea
关键词
language models of code; automated code review; bug detection; variable misuse;
D O I
10.1145/3551349.3559497
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
We share our experience in developing Code Understanding Linter, an automated code review tool based on language models of code. We introduce several ideas to make the tool be more practical, including combining two different language models, filtering meaningless outputs from the model, and generating developer-friendly diagnosis messages by interpreting the outputs from the model. On top of those ideas, we describe the design and implementation of an automated code review tool to detect variable-misuse defects in Python codes and suggest how to fix them. We evaluated the tool with a set of code repositories in Samsung Electronics, which contains real-world Python codes. Our experiment proves that our tool can discover hidden defects in the real-world codes, but the false positive rate is far higher than we expected. After manually investigating every false positives, we discuss the limitations of the language models and possible solutions.
引用
收藏
页数:5
相关论文
共 50 条