Civil Modularity (Re: Smalltalk & Squeak featured on Slashdot)

Bijan Parsia bparsia at email.unc.edu
Sun Apr 22 04:54:47 UTC 2001


On Sat, 21 Apr 2001, Les Tyrrell wrote:

> Daniel,
> 
> Sorry if this topic has become acrimonious.  That certainly wasn't the
> intent of those of us who actually care about this topic, and have
> spent considerable effort on the issues behind it.

I don't think it was the intent of anyone in the discussion.

>  I for one would
> love to have a lively, ongoing discussion on this list about the
> issues that are going to have to be addressed in order to bring
> modularity to Squeak.  There are many of them, and I think that most
> people on this list would find that discussion to be very interesting,
> and very relevant to them.

Yes, but it would be best, IMHO, if these were rooted in 1) concrete
proposals, pointers, papers, etc. and 2) code. And I, personally, would
prefer that such statments as, "Squeak isn't growing fast enough because
it lacks modularity", or "Squeak Central must make modularity (espeically
of a particular sort) the top issue", or "Clearly, Squeak is worthless
without modularity", or even, "Squeak lacks Modularity (period)", *not* be
part of it. After all, there are several sorts of Modularity Squeak has,
several sorts that it lacks, and several sorts I, personally, don't want
it to have. I would prefer that additions be pressed for their intrinsic
meritoriousness rather than  *simply* because Squeak Needs
Modularity/Squeak will Fail Without Modularity.

That being said, and in an effort to practice more and preach less, I
know, off hand, of 4 proposed designs in various degrees of flux and
instantiation:

	1) Oasis, which, IIRC, is mostly a SandBox sort of thing. Perhaps
	Lex's security stuff comes here or at least might aide and abet
	an Oasis like design. (Code wise, I understand most of what
	you have is VisualWorks based, yes? I'm unclear how much
	it would take to move it to Squeak.)
	2) The Stable Squeak stuff, of which I know absolutely nothing
	but am looking forward to playing with. (Clearly, this is all
	in Squeak, and fairly complete.)
	3) EPISS (Enivronments, Projects, Image Segements, and Superswiki)
	as I have just coined it. This is the bits and pieces I see
	of Squeak Central's modularity plans. Code bones are there.
	4) Collage (see http://minnow.cc.gatech.edu/squeak/745). Code
	wise, Hans-Martin Mosner is off sabbatical, alas.

One thing I like about the Collage design is that it's a straight forward
extension of the .st and change set mechanism. I've always thought that it
would be cool to be able to invoke past versions of a method (since, heck,
we've *got* them handy!). In general, I like the "layered" approach
somewhat better than the "lego" approach, perhaps because I *like* a
monolithic image :) I'm afraid I even like tweaking system classes, and
*even*, sometimes, but-don't-tell-anyone, adding methods to Object
(blush). Ok, sometimes I think that such scattering is the devil's work,
but hey!

Cheers,
Bijan Parsia.





More information about the Squeak-dev mailing list