Modularity agin (was: Re: [V3dot9] Another try for pre-gamma: #7051)

Andreas Raab andreas.raab at gmx.de
Fri Aug 4 19:05:56 UTC 2006


Hi Marcus -

Marcus Denker wrote:
>>> So just consider it to be the new "full" image...
>>
>> So it's back to kitchen-sink.
> 
> Why? For me, this is just a sign that
> 
> a) we have only a limited amount of man power available
> b) we don't have abstractions and tools that are good
>      enough to make a real modular world practical.

Yes and no. The limited amount of man power can be seen both ways: You 
use it to justify a single image, I'd use it to justify a smaller image. 
In other words, the less scope you have to deal with the more man power 
you can invest to make sure those portions that you deal with are 
handled in the best way possible. The more responsibility is with 
package maintainers the less man power you need to invest.

For the abstractions and tools: Sure, we don't have the perfect solution 
for these issues. But how about dealing with the parts that are utterly 
trivial to deal with? Like, for example, why not immediately remove all 
the packages that have almost no further dependencies, like: FFI, 
Speech, Nebraska, Sound, OB? Those (and others; there are definitely 
more in the image) would be steps into the right direction. And they 
really don't require many tools, and for the lacking abstractions (if 
any) new ones can and will be proposed. There are many practical things 
that can be done if the goal is modularity. Alas, the current goal does 
not appear to be modularity, or if it is, I can't see any tangible steps 
into that direction.

> e.g. as soon as we build the image from components, we *need* a 
> automatic build-and-test server.

The classic "we have no tools" excuse ;-) Then how about finding a 
process which doesn't require the tools. How about making use of the 
community instead? We've got people out there, if we can get them 
involved we might be able to get significant amounts of feedback without 
the automatic server (which would be great, no question, but I don't 
think that's a prerequisite).

Personally, having used Mantis extensively over the last Squeak versions 
I find the process, painful as it is at times, extremely useful. It is 
almost guaranteed that if you take the time to file a bug, it will be 
something that really matters (to you or your project). Which implies 
that people provide pretty good information, discussions etc. That in 
turn (at least to me) makes it a very different medium than, say, 
mailing lists. I don't read all my emails, but I *do* look at all my bug 
reports carefully.

> The way the 3.8full image was put together after the release of the 
> basic image was completely
> wrong: this would never scale to a real modular system.

In which way? Could you explain this? It strikes me that the process by 
which the 3.8 image was put together is exactly the process that we look 
at for any real usage situation of Squeak: Given a base image, load a 
set of packages that do what you'd like them to do and expect them to 
work together. If you really think that this process is completely wrong 
then we got a problem that is much deeper than this discussion.

> And I am quite sure that the abstractions we have (e.g. PackageInfo) is 
> not good enough for a true
> modular image. We already now have huge problems that make even the 
> maintenance of 3.9 in the current state a huge pain.

Please give some detail. I'm curious in which way for example PI isn't 
good enough or in which way 3.9 maintenance is problematic. In 
particular it would be interesting to me if the problems couldn't be 
solved by some more robust requirements for packages, for example, no 
overrides etc.

>> How disappointing. How very, very disappointing.
> 
> It's nice to know that are so much pro modularity... I really should 
> read again the discussions of way-back-when. I don't recall to understood
> this position from your postings back when people had lots of energy (3.8) 
> for this...

Then why do you think I've spent so much time trying to fix the 3.3a 
module system or on actually getting stuff out of 3.6? Why do you think 
I started ToolBuilder, UIManager and made the ToolSet abstraction?

Cheers,
   - Andreas



More information about the Squeak-dev mailing list