Search code examples
smalltalksqueak

Current Smalltalk development activity


I'm now a couple of months into my Smalltalk learning voyage. I was aware, from the beginning that Smalltalk has several "dialects" (perhaps "dialect" isn't the best word) but by this I mean VisualWorks, Squeak and Dolphin to mention just three. So far I have limited my foray to Visualworks and Squeak. But I've now discovered that Squeak seems to be metamorphosing (pun intended!) into several other variants e.g. Tweak, Pharo, Cobalt and Croquet.

Could somebody explain: a) why these initiatives (Tweak, Pharo, Croquet and Cobalt) have arisen ? b) should I take time keep abreast - bearing in mind I'm a Smalltalk neophyte? c) How come such an unpopular language has such a vibrant set of developments happening? d) Are there other initiatives that I should be aware of? (as a beginner not a computer researcher that is)


Solution

  • A bit of background might be helpful: Tweak was a research effort trying to bring some of the great things from Etoys to the system level (i.e., the player-costume architecture, the concurrency model, "events everywhere", asynchronous notifications etc). Tweak was a "blue-plane" approach to graphics, composition and scripting and in some ways never really intended to be a production tool. That it became one was its downfall because it wasn't polished enough for wide use and by becoming a production tool it became infeasible to implement some of the radical changes that would have been required to make it ready for world dominance ;-)

    Croquet had an entirely different goal. We needed Croquet because we needed a bit-identical replicated computation machinery. Croquet computes bit-identically on all platforms which required modifications to the virtual machine and some libraries (such as floating point). Cobalt is a spin-off from Croquet which takes the SDK and builds an application from it. In this sense Cobalt is not really a fork - it is the current focus of the Croquet community.