paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Compiler-directed Migrating API Callsite of Client Code

编译器指导的客户端代码 API 调用点迁移
ICSE Proceedings of the IEEE/ACM 46th International Conference on Software Engineering2024匹配度 2/10 · 该论文属于编译器/软件工程中的 API 迁移与代码自动修复,不涉及 LLM/Agent、静态分析在 ML 或 Agentic 程序中的应用、浮点程序分析或贝叶斯程序分析,与用户核心研究方向交集很小。仅在广义 PL/程序变换层面有微弱关联,因此匹配度低。引用 5 inbox
Hao Zhong, Na Meng
crossref: 2026-09-12

AI 速览

一句话:提出编译器指导的方法,自动迁移因库 API 破坏性变更而失效的客户端代码调用点。

库开发者修复缺陷、增加特性或重构代码时可能引入 API 破坏性变更(如重命名),导致客户端项目出现大量编译错误。客户端程序员必须反复升级库调用点,但过程繁琐易错,且他们常不熟悉新版 API 用法。已有迁移方法要么挖掘 API 映射,要么学习编辑脚本;前者难以处理复杂情况,后者缺乏充足训练源(如迁移提交)。标题表明本文采用编译器指导的调用点迁移,但摘要未给出具体技术细节、关键结果与评估。

问题
库 API 破坏性变更会使客户端调用点产生大量编译错误,人工升级繁琐易错;现有基于 API 映射或编辑脚本学习的迁移方法存在固有局限。
方法
标题表明提出编译器指导的客户端 API 调用点迁移方法,但摘要未展开其具体实现。
评估
摘要未说明评估方式与结果。
原文摘要(Abstract)

API developers evolve software libraries to fix bugs, add new features, or refactor code, but the evolution can introduce API-breaking changes (e.g., API renaming). To benefit from such evolution, the programmers of client projects have to repetitively upgrade the callsites of libraries, since API-breaking changes introduce many compilation errors. It is tedious and error-prone to resolve such errors, especially when programmers are often unfamiliar with the API usages of newer versions. To migrate client code, the prior approaches either mine API mappings or learn edit scripts, but both the research lines have inherent limitations. For example, mappings alone cannot handle complex cases, and there is no sufficient source (e.g., migration commits) for learning edit scripts.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot11359,
  title = {Compiler-directed Migrating API Callsite of Client Code},
  author = {Hao Zhong and Na Meng},
  booktitle = {ICSE},
  year = {2024},
  doi = {10.1145/3597503.3639084}
}