in reply to Perl Optimization
I can give you an example program that analyses C++ code. It has as input a tags file and a bunch of C++ code. And it generates a bunch of html files showing the class hierachy and the complexity off all classes. It does this in three steps:
- It parses the tagsfile to figure out where to find all the classes and operations in the code, and to build the class tree. This uses a fair amount of regular expressions and a couple of functions that recursively walks through a hashes and arrays.
- It scans the c++ source files to figure out how many lines of code there are per operation and class. The results are later used to sort the classes according to complexity.
- It transforms the results into html files.
The code has not been optimized, and I think there probably plenty of stuff to optimize. It has about 20 subs. It was written when I just started programming in Perl, so it probably can also be used to show how to improve style and programming techniques.
You would need to have a fair amount of C++ code to analyse and access to a ctags program. In addition, the C++ code should not use any namespaces.