[Pharo-project] What is Configuration? (was: Re: [squeak-dev] Personalized systems with Treated)

Chris Muller asqueaker at gmail.com
Fri May 6 17:44:53 CEST 2011

> Chris. Metacello scripts are object specs and to me this is just great because they are objects
> and with objects we can do a lot. Checking, transforming...... So of course hacking a little script is fast and
> Metacello requires some care but I can tell you that for us this is **hyper** important (and not just
> as some person may think because we like complex stuff - because this is plain wrong)
> because Metacello are first class ***objects*** scripts.

I am an objectician almost to a fault.  I tend to want to solve every
problem with a object model.  Everyone knows I love objects.

But I also view software as a _means_ not an end.  A means to do
something in the real world that I want done.  In this case, I simply
want to do Configuration.

Configuration is not just about loading packages; it's about
_configuring_ a system.  It's about taking a

   VM + Legacy-Image

and configuring it to do something practical in the real-world.

If "Legacy-Image" is our dream super-stripped 1MB Spoon type of image;
an image with just a Compiler and no MC or any tools, and I want to
configure it for an embedded system, then this is where the
Smalltalk-rubber hits the road:  The person developing this type
system will be configuring THAT image with a config-file, not an

   VM + Legacy-Image + config-file

(config-file is just a .st, .sar, or anything else that can be
interpreted by the Legacy-Image).

Using an object-model in this case is counterproductive because just
to be able to _interpret_ that (Metacello) object model, you have to
load a gazillion packages into the image which is targeted to be
embedded, just to "do" the configuring.

This is why I think a "catalog of configuration files" is appropriate;
so that the existence of this type of system can be documented
alongside the existence of all other kinds of systems including
Metacello-managed ones.  Whether someone wants to bring Metacello into
their life to do package management is their personal choice.  But
that is separate from having their application listed in The Catalog
of ALL available Squeak (and, I hope, Pharo) titles in one place,
regardless of whether they use Metacello or any other specific

 - Chris

More information about the Pharo-project mailing list