About squeak image compatibility (3.6/7/8)

Andreas Raab andreas.raab at gmx.de
Mon Jan 9 06:20:55 UTC 2006

Cees De Groot wrote:
> Could you substantiate that claim? I think that Traits introduces
> extremely little compatibility issues...

Well, I think that depends a *lot* on your perspective of the system. It 
would be more accurate to restate the above to say that there should be 
very little compatibility issues, UNLESS:

* you actually start using 3.9, in which case you'll have issues with 
porting back stuff to older Squeak versions (this will be a serious 
issue for packages that are and should be used in older versions of 
Squeak - will these older versions of Monticello be able to deal with 
class definition that have been created in 3.9? etc)

* you assume a stable interface in classes and meta classes (this got 
seriously broken in 3.7, then again in 3.8, and now again in 3.9 - it is 
amazing how little continuity there has been in such a critical part of 
the system)

* you use meta tools that rely on the previously available semantic 
entities (which excludes traits)

* you use meta tools that rely on previously stable representations 
(class definitions in particular)

Now, I'm not saying that everyone will be affected by (or even care 
about) the above but if you are in either situation it is pretty safe to 
assume you'll be severely screwed one way or another. Case in point: 
Without appropriate fixes Monticello and file contents browser are 
invariably broken (and so is the VW parcel that allows people to load 
Squeak code).

And of course, another major difference in perspective is whether you 
are on the breaking or the broken side of things. People don't like 
their stuff to get broken by other people so any claim that this is 
"extremely little" is not likely to get you many friends - in particular 
if the breakage (as so often) is undocumented and you'll probably find 
out the hard way. And I think you'd be well advised to keep that in mind.

   - Andreas

More information about the Squeak-dev mailing list