[Meta] Standard packages?

Ralph Johnson johnson at cs.uiuc.edu
Mon Jul 23 08:07:46 UTC 2007


On 7/23/07, Brad Fuller <bradallenfuller at yahoo.com> wrote:

> Perhaps, but I don't see it.  If it's a group of individuals that are charged
> with core requirements, why would they abuse it? I don't see that sort of
> animosity here. Maybe there is and I don't see it.

"Animosity" is the wrong word.  There is diagreement.  People can
disagree without being disagreeable.  In fact, any two people will
disagree about *something*.  If two people agree on everything than
one of them is unnecessary.

> > And lastly, when the disagreement about any of
> > these aspects arises, the only thing that anyone can do is to fork.
>
> That doesn't have to be. There could be some clear rules that we follow of
> what to do in those cases. It could be as simple as not including the portion
> that people are disagreeing to. Or there could be a process where it's
> brought before more people to help decide. There are a lot of possibilities.

If you say that you only include the portion that people agree to,
then you let the most conservative people hold up progress.  Sometimes
you just have to be change and make some people unhappy.

A good example is traits.  The 3.9 team put traits in the image.  Lots
of people didn't like it.  I'm not sure I do.  However, there is no
question that the only way to see whether traits is good is to use it,
and nobody wants to build a library on traits unless it is standard.
Now that it is in the image, people are starting to use it.  It will
probably take another year or two before we can see for sure whether
traits is worth the trouble.

There isn't any way to compromise with something like traits.  It is
too core.  it is easier to compromise with peripheral parts of the
system.  That is why it is good to reduce the size of the system and
reduce the opportunity for conflict.  But you can't eliminate all
possibility of conflict.  Adding features to the language, which is
what traits does, will alwas be contentious.  You either do it or
don't do it.  Saying "it is a package that you can load if you want"
is a death warrent for language features.

-Ralph Johnson



More information about the Squeak-dev mailing list