当前位置: X-MOL 学术Program. Comput. Softw. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
NOBRAINER: A Tool for Example-Based Transformation of C/C++ Code
Programming and Computer Software ( IF 0.7 ) Pub Date : 2020-10-01 , DOI: 10.1134/s0361768820040052
V. V. Savchenko , K. S. Sorokin , I. E. Bronshtein , A. S. Volkov , V. V. Kachanov , G. A. Pankratenko , M. K. Ermakov , S. I. Markov , A. V. Spiridonov , I. V. Aleksandrov

Abstract

Refactoring is an integral part of the modern software development process. Often, the refactoring must be performed at the global level with modifications in a large number of files. Making these modifications is a long and painstaking work. However, users rarely employ automated tools for this purpose because they consider them unreliable and difficult to use. In this paper, a new tool for transforming the source code is described. It is based on the intuitively clear specification of transformation rules in the form of short code fragments in C or C++. These rules describe the code before and after the transformation. We believe that, due to the absence of additional abstractions (such as domain-specific languages), this approach can be easily used in practice. Even though the tool uses source code templates, it operates on the level of the abstract syntax tree. This enables the tool to better analyze the code and verify the validity of transformations.



中文翻译:

NOBRAINER:一种用于基于示例的C / C ++代码转换的工具

摘要

重构是现代软件开发过程中不可或缺的一部分。通常,重构必须在全局级别进行,并且需要修改大量文件。进行这些修改是一项长期而艰苦的工作。但是,用户很少为此目的而使用自动化工具,因为他们认为它们不可靠且难以使用。在本文中,描述了一种用于转换源代码的新工具。它基于C或C ++中短代码片段形式的直观直观的转换规则规范。这些规则描述了转换前后的代码。我们认为,由于没有其他抽象(例如特定领域的语言),这种方法可以在实践中轻松使用。即使该工具使用了源代码模板,它在抽象语法树的级别上运行。这使该工具可以更好地分析代码并验证转换的有效性。

更新日期:2020-10-02
down
wechat
bug