Language-agnostic dynamic analysis of multilingual code: promises, pitfalls, and prospects

Language-agnostic dynamic analysis of multilingual code: promises, pitfalls, and prospects
复制标题

与语言无关的多语言代码动态分析:承诺、陷阱和前景

DOI:
10.1145/3540250.3560880
复制
发表时间:
2022
期刊:
Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
影响因子:
--
通讯作者:
Cai, Haipeng
Cai, Haipeng
中科院分区:
--
文献类型:
--
作者:
Yang, Haoran;Li, Wen;Cai, Haipeng

文献摘要

参考文献

被引文献

相似文献

对多语言代码进行全面的分析是对现实世界软件进行系统质量保证的关键,这些软件主要是用多种计算机语言开发的。对于这样的分析,国家的最先进的方法提出了一个几乎完全语言无关的方法,并将其应用到动态依赖分析/切片的多语言代码,表现出很大的承诺。我们通过技术分析研究了这种方法,然后将其应用于10个真实世界的多种语言组合的多语言项目的复制研究。我们的研究结果揭示了关键的实用性(即,具有效率/可缩放性、精确度和对实际使用的各种语言组合的可扩展性的水平)对方法的挑战。基于这些结果,我们反思了导致这些挑战的语言无关设计的潜在陷阱。最后,展望了多语言代码动态分析的前景,我们确定了一个新的研究方向,更好的实用性和精度,而不牺牲可扩展性,支持的初步结果。关键的结论是,追求完全与语言无关的分析可能既不切实际也不必要,而在语言独立性和实用性之间寻求更好的平衡可能更有成效。
Analyzing multilingual code holistically is key to systematic quality assurance of real-world software which is mostly developed in multiple computer languages. Toward such analyses, state-of-the-art approaches propose an almost-fully language-agnostic methodology and apply it to dynamic dependence analysis/slicing of multilingual code, showing great promises. We investigated this methodology through a technical analysis followed by a replication study applying it to 10 real-world multilingual projects of diverse language combinations. Our results revealed critical practicality (i.e., having the levels of efficiency/scalability, precision, and extensibility to various language combinations for practical use) challenges to the methodology. Based on the results, we reflect on the underlying pitfalls of the language-agnostic design that leads to such challenges. Finally, looking forward to the prospects of dynamic analysis for multilingual code, we identify a new research direction towards better practicality and precision while not sacrificing extensibility much, as supported by preliminary results. The key takeaway is that pursuing fully language-agnostic analysis may be both impractical and unnecessary, and striving for a better balance between language independence and practicality may be more fruitful.
DOI: 10.1145/2970276.2970352
发表时间: 2016-08
期刊: 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE)
影响因子: --
作者:
Haipeng Cai;D. Thain
通讯作者: Haipeng Cai;D. Thain
面向树与面向行的基于观察的切片
DOI: --
发表时间: 2017
期刊: IEEE Working Conference on Source Code Analysis and Manipulation
影响因子: --
作者:
D. Binkley;N. Gold;Syed S. Islam;J. Krinke;S. Yoo
通讯作者: S. Yoo
拓宽多语言静态分析的视野:从 C 代码中提取语义摘要以进行 JNI 程序分析
DOI: 10.1145/3324884.3416558
发表时间: 2020
期刊: 2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE)
影响因子: --
作者:
Sungho Lee;Hyogun Lee;Sukyoung Ryu
通讯作者: Sukyoung Ryu
独立于语言的重构的元模型
DOI: 10.1109/ispse.2000.913233
发表时间: 2000
期刊: Proceedings International Symposium on Principles of Software Evolution
影响因子: --
作者:
S. Tichelaar;Stéphane Ducasse;S. Demeyer;Oscar Nierstrasz
通讯作者: Oscar Nierstrasz
GitHub 中多语言主义的实证评估
DOI: --
发表时间: 2014
期刊: International Conference on Evaluation & Assessment in Software Engineering
影响因子: --
作者:
Federico Tomassetti;Marco Torchiano
通讯作者: Marco Torchiano