Is BC worth the image format switch?

Tim Rowledge tim at sumeru.stanford.edu
Wed May 1 04:17:06 UTC 2002


As Anthony pointed out the key factor is that he has implemented proper
Closure behaviour. In the process he sucked in my new CompiledMethod
format changes, fixed a few method header infelicities and reimplemented
the callstack mechanism. The latter is responsible for most of the
performance improvement; for some explanation of what happens you might
find it useful to read Eliot Miranda's OOPSLA 97 paper on BrouHaHa.
Anthony implemented a variant of that stack mechanism but exposed it to
the Smalltalk code rather than hiding it. I'm not entirely sure I like
that part, but I haven't had time to examine it properly yet. The worst
problem of which I'm aware is the lack of support for swapSender: and
callCC - important for coroutining etc. 

The VI4 project is trying to gather together all the plausible changes
that peolpe want and which would require an image format change or would
other wise break back compatibility. For example, renaming the plugins
more sensibly ( change Klatt to KlattPlugin, etc) would save some
confusion (ever got lost trying to work out where the code for ZipPlugin
is? - in InflatePlugin & DeflatePlugin classes!) but means changing
assorted image code.

We could even convert all bitmaps to little-endian, since only Mac uses
big-endian and we know that nobody important uses Macs. 

tim





More information about the Squeak-dev mailing list