On 16 Oct 1998 10:59:11 +0200, you said:
of them depends on some other package. I can't see how a tool
could determine
automatically which requirements are really necessary and which just enhance
functionality without my writing it explicitely.
For languages that are fairly statically bound (C, for instance), it
suffices to do perform a recursive 'makedepend' type operation and
seeing which functions call which. You *do* have to worry a bit
about function calls through pointers, except that such beasts usually
require special set-up (such as call to DLL code, etc) that can in principle
be programatically detected. Yes, I know you can't find the initialization
of a function pointer if it's done via an alias through another name, but
people who write code that depends on aliasing screws Deserve To Lose. ;)
However, the dynamic on-the-fly nature of Lisp code makes the problem,
I believe, NP-complete. Let's face it, in the context of the previous
paragraph, (add-hooks) is an aliasing screw. ;)
Of course, it could just be *my* brain that's wedged like a Turing Machine
simulating itself... ;)
--
Valdis Kletnieks
Computer Systems Senior Engineer
Virginia Tech