什么是适合代码解析和调用图绘制的语言

时间:2011-08-11 16:04:15

标签: parsing call-graph

我有一个想法是解析一些C ++ / C代码并从中绘制一张图片(非常像一个调用图)。但我可能会绘制静态图片(其中一些名为盒子),但也希望盒子是关系型的(连接的),以便最终用户可以调整盒子,但连接盒子的线仍然存在。

换句话说,最终目标是用户可以通过其中的调整元素与图表进行交互。

还需要更高级的动画语言/框架支持功能。

我在这里发帖寻找这个想法的最佳语言(C ++(在Microsoft MVC框架中?)或python等)。平台(Windows与Unix)也是有待确定的。可能是Java也是一个很好的选择..

谢谢!

2 个答案:

答案 0 :(得分:0)

解析/分析C并为C ++做同样的事情是完全不同的任务。

DMS Software Reengineering Toolkitflow analyzersC提供了解析器和各种C++

对于C,分析仪使用点到分析进行控制和数据流分析,全局点到分析和调用图构建。对于C ++(实际上是C ++ 11),我们正在努力完成控制流分析;它是分析仪的一种强硬语言。 DMS具有用于数据流等的内置机制,但是我们需要花费一些时间将C ++前端与所有这些结合起来。

答案 1 :(得分:0)

如果你想要一个调用图,你就不必解析C ++。您可以将其编译为LLVM IR(使用llvm-gcc,Dragonegg或Clang)并从中间代码中显示您的调用图。至于大型图形可视化,我自己一直在寻找这样一个工具,目前仍然坚持使用Graphviz。