This looks really interesting, but I confess that some of the output I'm receiving doesn't seem to make sense. I see modules which appear to be completely unrelated, even when I dig through the code, but the output suggests otherwise. Could you possibly explain how to interpret the output?
| [reply] [Watch: Dir/Any] |
The output roughly means the following:
---
<filename>:
<subname>:
called from: <filename>:<subname>: <this many times>
The reason you're seeing odd results is a limitation of static analysis.
If you have two packages with identically named methods, then their usage gets lumped together. That is, One->new and Two->new are grouped, and count as two calls to new.
I don't think you can get meaningful results unless you have an interactive environment -- like Squeak -- that can track the class of the invocant. Still, this is a nice approximation. As long as you keep the limitations in mind, it can be quite useful.
| [reply] [Watch: Dir/Any] [d/l] [select] |
| [reply] [Watch: Dir/Any] |