Implementing CHA

The code for CHA is in the following 5 files

Understand the code

Print the code in ChaMain, ChaAnalysis, and Hierarchy. Read it very carefully and make sure you understand what is going on. There is not need to read the code for Loader and for ChaWriter. Here is some relevant information:

Implement CHA

There are 4 places where you need to add your own code: The comments in the code should provide enough detail about the necessary modifications. If you have any problems understanding the code or figuring out what needs to be done, let me know. I'd suggest the following strategy: implement and test each of the 4 changes separately. First implement "traverse", and then "virtualDispatch". Check the output files (for the 7 data programs) before and after each change and make sure that your code does the right thing.