[Squeakfoundation]Initial project - Squeak core

Göran Hultgren squeakfoundation@lists.squeakfoundation.org
Sun, 27 May 2001 23:37:29 -0700 (PDT)

Hi foundation fellows!

--- Cees de Groot <cg@cdegroot.com> wrote:
> Here's my second initial project proposal, mostly triggered by the meeting 
> with Paul.
> The first project must be a no-brainer, reasonably easy to implement, and a 
> test of the (initial) environment. I propose CVS/Sourceforge, I know it's not 
> optimal for St projects but it is there, it works, and we can use it to 
> bootstrap up to a Squeak-specific SCM system.

When it comes to using CVS with Squeak Martin Kobetic is your man. :-) He is one of the CVSTProj
members and he has done most of the fully functional CVS integration in VW/Squeak/Dolphin (but not
the ports). Personally I have focused on the client/server protocol and that is not yet ready -
but it might show up soon in Stable Squeak, who knows. Stable Squeak has as a semiofficial goal to
be able to use CVS as a storage backend for the repository mechanisms.

> Proposal:
> Calling SqC's hand on SqF cooperation, I propose that we put the VM plus a 
> very minimal core class library on SourceForge, and call that the official 
> Squeak reference implementation.

My small revision to this proposal would be to start with focusing on the VMs and plugins and
waiting a second with the "image"/class libraries. That will be a good chunk of work anyway since
there are a whole range of ports. This way we might also get some good timing with the very
imminent first "release" of Stable Squeak. More below.
> Rationale:
> As Paul indicated in his notes on our conversation, there are lots of 
> parallels between Squeak and Linux - as Linux is tremendously succesful, we 
> might just as well learn from it :-).
> Both systems are an operating system, and both are applicable in a very broad 
> range, both horizontally (from iPAQ to "SqueakNOS for System/390 ;-)") and 
> vertically ("BusinessSqueak", "SchoolSqueak", ...). Like Linux, a worthwhile 
> model could be to define a very basic core (kernel, libraries) and have third 
> parties build distributions on top of that with added value. So a 
> BusinessSqueak could be core+networking+Glorp+Swazoo (with a competing one 
> core+networking+Comanche+SMS), a SchoolSqueak would have Morphic and eToys, 
> etcetera. Keep in mind, that's the general direction I think it useful, the 
> first step I propose here is just a very minimal first step. A side effect of 
> this operation is that we force the issue of modularity.

Modularity is one - or should I say - THE main focus of the work being done in Stable Squeak. As
my teaser for the next article said - StSq has an ENVY-killer in the making... Tremendously

> Squeak-Core (as I propose to name this bit) would define the de-facto 
> standard, which automatically opens up a clear, minimal target for competing 
> and/or platform-optimized implementations. The first work, apart from maybe 
> some refactoring, could be to write unit tests for this core so that 
> alternative implementations could be validated.

These actions that you describe are exactly what StSq has been doing. They have broken down a
minimal image with refactorings and written a whole bunch of unit tests for it.
> The "Calling SqC's hand" terminology I used above is in response to Dan's 
> message indicating SqC's support for the SqF effort ("great, Dan - prove it" 
> ;-)). Handing over the responsibility for the core to the community and 
> pledging to cooperate on this bit would make this support very concrete. As it 
> would be a extremely minimal bit of Squeak, it is very likely to consist of 
> very stable code so that the impact on SqC day-to-day operations is likely to 
> be small. That helps us to focus on procedures around SqC/SqF cooperation, 
> roles, responsibilities.
> Goal:
> Produce Squeak-Core v1.0 on SourceForge.
> Steps:
> - (in parallel with the other steps) setup a mailing list where we can discuss 
> the scope of Squeak-Core (probably VMConstruction plus stripped-down versions 
> of Kernel, ST80, Collections, System - the goal is to have stuff in Core that 
> must be present everywhere, no matter what the size of the platform or the 
> application).

Why not just merge this mailinglist with the (nonexistant) "Stable Squeak mailinglist"? StSq is in
dire need of one and I have been very close to setting one up - I have installed mailman but I
haven't gotten around configuring it. You have done that so could you set one up? StSq would be
grateful - right now we just have an alias "stsq@bluefish.se" which points to a bunch of people -
a list is better and the connection with SqF should be good. StSq and SqF needs to "connect" I
> - Setup a SourceForge project or adopt an existing one for this goal.

There is one that was setup for the VM I think. I believe Stefan Rudlof did that a while ago and
there was some heated discussion about it involving Andreas Raab and Ian Piumarta I believe -
can't remember the issues though - but it sort of didn't catch on since Andreas and Ian did not
really "support" it. (My memory may not server me right...)
> - Setup a self-contained CVS changeset with some extra bits of code so that 
> e.g. the Help menu is extended with SourceForge CVS interactions ("update code 
> from SourceForge", "commit code to SourceForge", "send patches to Squeak-Core 
> project mailing list", etcetera).

Ok, this is where CVSTProj comes in. That project IS hosted on SF right now - go and take a look.
The code is fully functioning and Martin Kobetic is the guys who knows the most of it. But it uses
an external executable CVS right now. A coming version would use my protocol implementation but we
haven't gotten there yet.
> - Take a code cut and stash it into SourceForge. Call it "1.0.0".
> - Start a machinery like the linux kernel machinery: Squeak-Core 1.1.x is 
> hacking, alpha, unstable, when there's a nice set of new features start 
> stabilizing until a version can be called 1.2.0 which is the next "official" 
> release, etcetera.

These things has been discussed at lenght on the Squeak ML. But I do not remember the results! :-)

As a sidenote - we are setting up a public new Swiki for StSq later today in preparation for the
coming release.

If anyone is thinking of taking action on these things described above - do get in contact with
StSq first (using stsq@bluefish.se for now) and check out what already is done!

regards, Göran

PS. I am sort of taking the role of StSq-nag-person, the guy nagging everybody... :-) DS

Göran Hultgren, goran.hultgren@bluefish.se
icq#:6136722, GSM: +46 70 3933950, http://www.bluefish.se
"Department of Redundancy department." -- ThinkGeek

Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices