logo       

Re: An uncomfortable question: msg#01103

lang.smalltalk.squeak.general

Subject: Re: An uncomfortable question

Sorry but I disagree.
The fact that 3.3a modules were not usable is just due to the lack of push, the fact that the image is a ****messy**** state
with lot of references everywhere, and a too complex module model.

We need modularity. Lot of people are fed up to not be able to logically identify why when there is a new changes in the system
their code breaks. Or to have to remove from the image stuff that does not interest them at all. Having modules, I prefer packages for code grouping issues is key the future of Squeak. Look at how daniel manages RB out of the image. If I want RB I load it.
(even if RB should be the base browser but this is another discussion).

You miss a key point: an image is not an entity for deployement and code management and there is nothing in packages that
goes against image. These two concepts are NOT ENEMY.
Imagine a small image like in GNU Smalltalk where you can configure what you want to have in and a server where you
can select what you want in. You click and hop you get a new image. You code, publish your code and hop you able
to REBUILD your image. I'm also able to load your code and all the dependent packages. Without having nightmare to know
which changeset should be loaded and why my system is getting unstable because I forgot to load this tiny cs.

If I do not need Music, eToy, Chess, why do I need them in my image?

Image are cool for developping, I loved them, saving your objects for coffee breaks
with the mouse on the right line of the debugger but not for deployement and source code management.

Stef


On mercredi, octobre 30, 2002, at 10:46 pm, Swan, Dean wrote:

What 3.3a is trying to do with modules is essentially opening the same can of worms that has made MS Windows such a maintenance nightmare. Modules are (more or less) equivalent to .DLLs and may end up with all the associated issues. I don't know of any "good" solutions to these problems, but as attractive as the "idea" of modules is, I am personally content to stick with monolithic images for the forseeable future.

The whole concept of "software components" is IMO a fantasy propagated by media hype that ignores all the realities of real world engineering. In "real" hardware product designs, one often finds that re-usability is more of a structuring concept than a hard reality. I don't believe I've ever worked on a hardware design that didn't involve some kind of custom connector that is a "slight" variation of a "standard" connector, for example. (Just for context, I'm referring to everything I've worked on in the last 12 years or so).

I think the concept of a monolithic image constrains the reusability myth to realistic proportions, and makes implementation possible. Too much flexibility comes at a cost, which usually rears its ugly head in the form of increased complexity, higher resource requirements, and reduced preformance (relative to a less flexible implementation).

As an example of what I'm talking about, I've worked on a couple of different projects in the last few years where the end product has similar capabilities but one was implemented using a "flexible, reusable platform approach" and the other was implemented using a more task specific approach.

The flexible system has a source tree for the "platform" of about 5 gigabytes, generates a target image of about 170 megabytes, and needs two 300 MHz PowerPC 603e's and 512M of RAM to run. This system has hundreds of developers working on it.

The "task specific" system has a source tree of about 300 megabytes, generates a target image of about 1 megabyte, and runs on one 66 MHz PowerPC with 16M of RAM. This system had 4 developers working on it. The end functionalities of these two systems is *very* similar.

I'm not sure what my point is in all of this, but I think we should consider our goals carefully in relation to the questions that Andrew has raised. My preference is towards "lean and mean" rather than "incredibly flexible, general purpose (and suboptimal)".

-Dean Swan



-----Original Message-----
From: Les Tyrrell [mailto:tyrrell@xxxxxxxxxxxxxx]
Sent: Thursday, October 24, 2002 8:15 PM
To: squeak-dev@xxxxxxxxxxxxxxxxxxxxxxxxxx
Subject: Re: An uncomfortable question


These are important points- as we move forward, I am hoping that we will be
moving towards a model in which individual pieces of code are liberated as
much as possible from unneccessary constraints on their usage. That is
going to require a rather significant change in a lot of Squeak's
infrastructure, but I am rather impressed with how much progess is being
made by a lot of people in terms of understanding those issues, or at least
recognizing them. The days of the monolithic image ( and the inherent
weaknesses and roadblocks to progress that it represents ) are, hopefully,
numbered.

- les

----- Original Message -----
From: <danielv@xxxxxxxxxxxxxxxx>
To: <squeak-dev@xxxxxxxxxxxxxxxxxxxxxxxxxx>
Sent: Thursday, October 24, 2002 3:41 PM
Subject: Re: An uncomfortable question


Well, I think something interesting is happening in SqueakMap. The count
is now up to 16 packages, by 8 different authors. These range from small
framework additions like SharedStreams to large projects that would be
unlikely to ever become available through the Squeak base image, like
Seaside.

This opens up directly possibilities to maintain other projects outside
the image too, like Celeste, Scamper and others.

All this should reduce the maintainance effort required of SqC, and let
the community do experiments in various directions without actually
requiring a fork.

A case in point - if Henrik's code was first debuted as a SM package, it
would have gotten earlier feedback, it could have been more modular, it
would have been easier for people to try out and it would have been
optional, orthogonal to the harvesting work done on 3.3a.

This would have saved us at least one uncomfortable question.

So I think one important thing to consider is how we take full advantage
of this new option we have as a community, and how we change our process
to fit it in.


Dr. Stéphane DUCASSE (ducasse@xxxxxxxxxxxx) http://www.iam.unibe.ch/~ducasse/
"if you knew today was your last day on earth, what would you do
different? ... especially if, by doing something different, today
might not be your last day on earth" Calvin&Hobbes






<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise