一句话:回顾 Deckard 论文十年影响:提出结构化代码向量嵌入以实现快速相似性检测和克隆检测。
本文是 ICSE 2007 发表的 Deckard 论文十年后的主旨回顾。Deckard 的核心贡献有两点:一是提出一种面向结构化代码的新型向量嵌入,使相似性检测能够快速进行;二是将该嵌入应用于克隆检测,形成 Deckard 工具。该嵌入方法简单且易于适配,而相似代码检测本身又是软件工程、安全和计算机科学教育中一系列经典与新兴问题的基础,包括代码复用、重构、移植、翻译、合成、程序修复、恶意软件检测和反馈生成等。作者认为,这两方面共同支撑了该论文持续的影响力,并推动了大量后续研究与应用。
In 2007, the Deckard paper was published at ICSE. Since its publication, it has led to much follow-up research and applications. The paper made two core contributions: a novel vector embedding of structured code for fast similarity detection, and an application of the embedding for clone detection, resulting in the Deckard tool. The vector embedding is simple and easy to adapt. Similar code detection is also fundamental for a range of classical and emerging problems in software engineering, security, and computer science education (e.g., code reuse, refactoring, porting, translation, synthesis, program repair, malware detection, and feedback generation). Both have buttressed the paper’s influence.