Squeak Starter

goran.hultgren at bluefish.se goran.hultgren at bluefish.se
Thu Oct 17 13:09:29 UTC 2002


Hi Andreas and all!

"Andreas Raab" <Andreas.Raab at gmx.de> wrote:
> Hi Göran,
> 
> Just a few random thoughts on the problem since I don't have any
> definitive answers. First of all, I think I agree with Les (or whoever
> said it) that at least I grossly underestimated the task at hand. I
> believe that we've been shooting for the whole cake which turned out to
> be too big a bite for all of us to chew in a single piece. I have always

Probably true.

> liked (I still do) the general approach that Henrik took due to its nice
> algebraic properties ... but there's not enough immediate payoff if the

That is nice to hear - then I am not alone in thinking that at least the
ideas are "ok".

> problem is only solved "abstractly" rather than "concretely".

True.

> The way I see it, right now there is this big gap between "what you used
> to be able to do" in 3.2 and what you can do in 3.3alpha. While all of
> the things that have been done may be "abstractly correct" (like
> removing categories and pools) they are a big concrete problem for
> anyone actually trying to make the transition. Also, there's this
> problem that at this point there is not a single concrete advantage for
> anyone actually using the module system - it's still in an abstract
> place in the future where "everything is going to get better" etc.

Yes, this is also the main reason IMHO that so few are trying to push
3.3 ahead.
As Avi wrote - (paraphrasing) if I can't work *in* it then I won't work
*on* it.

That is probably... THE biggest problem with 3.3 and Modules.

> Re: Complexity. I entirely agree with Daniel - like I was saying above
> the 3.3alpha module system is "abstractly nice" but if you go through
> the actual code it's pretty darn complex to understand and to handle.
> None of which I would claim is anyone's fault in particular since there
> are lots of complexities in Squeak itself which require even more
> complexities in handling them.
>
> BTW, I am _very_ impressed with the work that Avi has done on DVS. In a
> way, the exact opposite of the module system in 3.3a - it's very simple,
> works well for what it does, integrates with anything coming from 3.2,
> serves a specific purpose, has an immediate payoff. Excellent work.

Yes, DVS and SqueakMap together does indeed solve many of the problems -
perhaps enough of them for the time being.
But does this mean we should drop Modules(as in Henrik's code)?

> But like I was saying, don't expect any answers from me. I certainly
> agree with your point of view as well that simply "because it's there"
> we _should_ be using the module system of 3.3alpha - but how?! The
> problem is that it is kinda like a "single chunk of complexity" where
> trying to solve/fix any single problem (like name spaces, load/unload,
> repositories, CM tools etc) "automatically" requires you to deal with
> all of the other aspects as well.

Hmmm. Ok. How do we proceed? We have a few choices:

1. Drop Modules completely (remove it from 3.3) and instead focus on
"lightweight part solutions" like DVS (hey, sqcvs should fit right in
there), SqueakMap etc. As Avi has noted - those two components do solve
many of our immediate problems (but not all of course).

2. Try to "fix" Modules so that 3.3 gets to the point where we can
actually work there. The MABrowser, Alexandres tool, SqueakMap, Daniel's
fixes and of course a lot more could perhaps make it "inhabitable". And
then we can take it from there. Perhaps we could even start by throwing
in DVS (instead of all these .cses floating around) as the new mechanism
for improving "base" Squeak - it could make all the difference for the
harvesting and the Modules work.

3. Drop Modules (remove it from 3.3) but not in order to throw it away
but to instead "rework" it. Is there a point in rebuilding Henrik's
code? Can we do it in smaller steps? Can we make the code clearer and
more understandable? What does indeed Modules give us compared to the
lightweight solutions?

Choice 1 feels like chickening out. :-) And we would loose a lot of
work. Choice 2 might be too hard to accomplish - we haven't succeeded
yet so... why would we succeed now? Choice 3 also sounds like a lot of
hard work and perhaps it isn't even doable.

Which way do we go? Are there other alternatives?

> Cheers,
>   - Andreas

Good to hear your voice - in my book your opinion is very important. And
Dan's would be nice to hear too.

regards, Göran



More information about the Squeak-dev mailing list