使用Elegant Objects表示面向对象程序,检测未预料到的相互递归。

摘要:讲述 Elegant Objects (EO) 是一种倾向于纯对象和装饰的面向对象编程范式的变体。EO编程语言基于这些思想,并由 Bugayenko 提出作为面向对象程序的中间表示。本文提供了 Java、C++ 和 Python 中一些基于类的构造在 EO 中的可行表示。然后,我们在这些表示的背景下重新定义了经典的脆弱基类问题。最后,我们讨论了一种在 EO 程序中检测脆弱基类模式子集的算法。我们展示了使用EO作为中间语言是可行的,并讨论了改进语言以辅助更丰富的静态分析的可能性。

作者:Nikolai Kudasov, Mikhail Olokin, Oleksii Potyomkin, Nikolay Shilov, Maxim Stepanov

论文ID:2209.01803

分类:Programming Languages

分类简称:cs.PL

提交时间:2022-09-07

PDF 下载: 英文版 中文版pdf翻译中