我们在项目中使用了一个工具。这个工具有自己的语言,类似于Java。我正在寻找一个静态分析工具,可以应用于新的语言。有没有可以为任何语言定制的静态分析工具?或者有关于如何为我们自己的语言开发静态分析工具的文档或参考资料吗?
谢谢。
发布于 2010-05-13 19:38:57
根据您真正想要的是什么,Rascal可能会有所帮助:
Rascal是一种特定于领域的语言,用于源代码分析和操作。元编程。
发布于 2010-05-13 20:46:31
DMS Software Reengineering Toolkit是用于构建静态和动态程序分析工具的基础设施。DMS还为广泛使用的语言及其方言(C、C++、Java、C#、COBOL、Fortran等)提供了大量的前端。
如果您的语言很像Java,那么您很可能能够轻松地构建覆盖您的语言的现有Java前端的方言。在这一点上,您可以构建您选择的静态分析工具。
静态分析是一个相当广泛的话题。通常,要做到这一点,您需要了解程序中的信息流:控制流、数据流、指针分析、调用图等。DMS提供了实现所有这些的基础结构;同样,您也可以修改Java的实现。
https://stackoverflow.com/questions/2825261
复制相似问题