perlcalls: simple extraction of subroutine call structure. Usage: perlcalls Options: -a Try to add the ampersand to the sub calls... -o Print the calls from one sub only once, instead of once per call. In this case the calling parameters are not printed. -v Verbose. Print out calls to perl builtin functions as well. You will usually want to use -o as well since the output gets large in this case. -nr Do not follow "requires". -s Only print the subroutines found, not the calling structure. -t Trim off '&', ':', and (...) from names and do not print out the "calls:" lines. -m Match subroutine names in comma separated only. Use -M to still get the &name() calls, or -v to still get the keywords. -h Print this help. Notes: This is not a true perl parser, so can easily be fooled or confused. Quoting is mostly ignored. Block quotes: <<"END"; are attempted. Nested () are not explored. Only one level of "require" is searched. Eval-ing a subroutine name or definition wont be noted. Requires same indentation for sub line and matching } sub foo { ... } Requires perl4 style sub calls: &foo(...) not foo(...) (perl5 style could be added with a second pass...)