[Modules] Who's afraid of making modules?
Henrik Gedenryd
h.gedenryd at open.ac.uk
Thu May 23 11:16:47 UTC 2002
Andreas Raab wrote:
> Thus the "neighbor modules" are the prerequisites. I got caught by that
> too (as well as by "definedNames" and "exportedNames" which hold the
> actual objects not just their names as I initially assumed). Perhaps we
> should rename these variables accordingly (e.g., "prerequisites",
> "definitions" and "exports").
>
Sounds fair to me, but I think "dependencies" is clearer than prerequisites,
because it also serves the purpose of defining what other modules your
module can access names in.
> My feeling is really that we need to cut a few rough lines through the
> system after which we can establish finer areas of control. And I also
> think you could more easily establish a "working group on cutting out
> everything 3D related"
That already works. see
http://minnow.cc.gatech.edu/squeak/UnloadingModules
This and other info has been at
http://minnow.cc.gatech.edu/squeak/Modules
for some time. Now that's a pretty easy-to-remember place on the swiki, no?
danielv at netvision.net.il wrote:
> Yes, that's true, but I think, (Idon't know) that most of the modules in
> the system now do not have proper declarations unless someone (Henrik)
> has already readied them for removal. So the list is a reasonable
> approximation (see * below).
The reason is that there isn't much point in declaring these until a module
has been properly refactored. Until that point, its dependecies will look
much like a random list of other modules in the image. You can use "module
localUnresolvedRefsPerModule explore" to compute the implicit dependencies
from the code in a module.
So when a module has been refactored, so that its complete list of
dependencies "makes sense", then it also makes sense to declare the
dependencies.
> 1. Actually, I think Balloon3D is already supposed to unload as one of
> the examples. Though it still doesn't for me.
Have you tried
http://minnow.cc.gatech.edu/squeak/UnloadingModules
? It seems to work for me.
Henrik
More information about the Squeak-dev
mailing list
|