[ANN] StableSqueak first release - 0.1!

Göran Hultgren gohu at rocketmail.com
Fri Jun 1 07:14:36 UTC 2001


I am posting this on behalf of John who has trouble with his connection.

Last minute note:
Before you guys jump in - the Squeakfoundation server was moved just a few hours ago so it seems a
file has gone missing in that process - a contribution for Mac users by Henrik Gedenryd. Henrik
will probably upload it again within a few hours as soon as he reads his email.

Ok, enough with the silly talk, here is John:
-----------------
For the impatient, a public crash dummy release of the
Squeak World Tour code is available at:
  http://swiki.squeakfoundation.org/stablesqueak

Others are advised to wait a few days when a far
more comprehensible update will be released.
Mail will be sent to the list upon each release
update.

Documentation in the image is currently out of sync 
with the code. Not all of the subsystems have been
placed in the repository, nor does the distribution
match exactly what Goran Hultgren describes in his
very informative report on the prerelease.

Andreas Raab has graciously provided me with code
snippets that will make the image play happily with
the latest 3.1 VM. These changes will be going in this
weekend with documentation correction, cleanup and
enhancement. Further code should also have loadable 
configurations. 

Further, mac users will probably have to know how
to set the creator flags on the image file in order
for it to be double clickable.
 
(Quoted text is from the article, "Design Principles
Behind Smalltalk" by some guy named Dan Ingalls)

The Squeak world tour is a traveling feast that has
roamed around the world with the express intention of
reflecting upon the core of Squeak and applying
refactorings to make the code more reusable and
configurable. It is an offshoot of the Camp Smalltalk
project which is an ad hoc community effort to build
lots of really useful stuff that is portable to all 
of the major dialects of Smalltalk.

It was Ralph Johnson who suggested a tour guide.
Someone to give a thread of continuity to the effort.
That role somehow fell upon my head. In my role as
tour guide I cull bits and pieces of work that others
have done and reshape them into something new called the
Squeak World Tour image. 

It is my express goal to serve as a shepherd in this
process. It is my fervent hope that a myriad of configurations
will grow from this base as people explore their passions
and use the environment to experiment with new ways
of doing things. After all, a fundamental principle 
in the design of Smalltalk is...

"Personal Mastery: If a system is to serve the creative spirit, it must be 
entirely comprehensible to a single individual."

Smalltalk has quite admirably addressed this principle
in its image based development. The first releases of
the World Tour are intended to come up with the smallest
possible image that is still a usable development environment.
Further, the code that comprises this is externalized in
a repository, first as fileins later as modules or whatever
else people choose to do. Configurations of these files
may be named and revisioned as well. A very small bootstrap
of very portable code is all that is required to allow
other dialects to access one of these repositories.

"Modularity: No component in a complex system should depend on the internal 
details of any other component."

Most of the early work in the tour was directed toward understanding
unnecessary coupling of classes and methods in the base image.
Models don't need explicit knowledge of morphs and view, so that 
was factored out. Two very important goodies in the first release
are Smalllint and RefactoringBrowser. These are two extremely 
powerful tools for examining the code base and making controlled
improvements to said code base.

"Natural Selection: Languages and systems that are of sound design will 
persist, to be supplanted only by better ones."

I am a strong believer in self organizing systems and evolution as
tools of progress. Unlike others on the list, I think forking is good.
With the caveat that one needs to be able to share the best of what
one does with others who may live on other branches or even in different
trees. (What is the sound of a metaphor breaking? ;-}> ) The fear of
forking comes in that one may wind up on an evolutionary dead end...
abandanado and verloren. If we can recognize, name, and structure 
variation, then we have a means of sharing the valuable parts of
our experimentation with others... even if they reject our world 
as a whole. My belief system asserts that variation is the means
of evolution and selection is the process. Making tools to recognize,
categorize and revision variation gives us the tools and vocabulary
to cross fertilize ideas (not only between different Squeak images,
but between any Smalltalk images) and intentionally select which
features from which experiments get included in subsequent variations.

"Purpose of Language: To provide a framework for communication."

Finally, when answering developers asking for guidance and tasking
I have tried to focus not on dictating how things get done, but
define tasks that will facilitate sharing objects and information
as widely and freely as possible. I see a world in which we each
can be master of our own image and construct it from uniform
components. The goal is to facilitate each developer in their
process of evolving the language/environment to meet their
particular needs. Both in supporting the selection of desirable
traits and features as well as in not requiring the inclusion
of features that are not used.

John Sarkela :-}>
Squeak World Tour Guide


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

__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/





More information about the Squeak-dev mailing list