Squeak!
Squeak is an implementation of the Smalltalk system with some very outstanding
features:
- It is free!
- Its bytecode interpreter is almost completely written in Smalltalk,
which is then translated to C. Sources for the interpreter and the
translator are available in the system.
- It has a very active developer community, including some of the original
inventors and implementors of Smalltalk-80.
- It is available on a number of platforms, including Mac (original
implementation), Windows NT/95, various Unixes, Acorn Risc PC.
Look here
for a list ov available ports.
Most pointers to other Squeak info can be found at the UIUC
Squeak Home Page, and some more at the CREATE
Squeak Site.
Squeak has an active mailing list. To subscribe to the list, send a mail
to squeak-request@cs.uiuc.edu
with the word subscribe in it. The list is archived at the UIUC
Mailing List Archives (note that the archive is quite unwieldy; probably
someone would like to make it more accessible?).
Thing's I'm working on in my little spare time:
- Morphic Plumbin'! An extension of
Ward Cunningham's Plumbin'
to run within Morphic. I think it's immensely cool :-)
Excerpt from the change set header:
This changeset converts the original Plumbin' for Squeak into
a Morphic version.
You need to load all three Plumbin' files because 2 methods for PressureTank
are added. A new kind of Tile (BrokenElbowTile) is implemented to
break cycles. It displays itself with a gray overlay, and has a menu
item to 'fix' it (convert back to ElbowTile).
To start, execute 'Tile exampleMorphic'
- Creating stand-alone executables with Squeak. Look here
for an explanation and usable code for the Macintosh (PowerPC platforms
only at the moment).
- 3-D rendering entirely done within squeak. Come back soon to see
examples of output (you'll have to wait a little longer for code).
- I've got Squeak changed to 2 bit tags, opening up the possibilities
for more immediate classes. Look at 2tagbits
for the code (squeak 1.18)!
- Dynamic Primitives - a mechanism for specifying primitives in Smalltalk
(which Squeak already does) and translating them into native code
completely from within Squeak, without invoking an external C compiler
or such.