Dr. David A. Eckhardt -- Why Squeak on Plan 9 is Interesting




Executive Summary

I believe (as of July, 2006) that porting Squeak Smalltalk to Plan 9 is a potentially very fruitful project because of world-view similarities and because each system promises benefits for the other.

World-view Similarities

I believe Plan 9 and Squeak share an ethos which could be described as "small is beautiful" or, in the formulation of Niklas Wirth, "lean software". This world view overlaps with that of Scheme and Forth.

Potential Areas of Synergy

One way to think of Plan 9 is as a community of people focused on the sorts of software artifacts naturally expressible in the C programming language. This means it is a natural system to deliver:

Meanwhile, Squeak offers Plan 9 the opportunity to write GUI and media applications in a garbage-collected VM-based language with inheritance--an alternative implementation of approximately the same goal set as Limbo (or, though the correspondence is weaker due to mass, Java). Squeak's object store can swap out objects, enabling the VM to run in a fixed amount of memory without requiring the underlying operating system to support paging.

Putting the two together would be attractive because:

Unfortunate Issues

Summary

Both Limbo and Squeak are multi-platform VM-based languages which target graphics, media, and the Web. Limbo is more focused on building distributed applications by composing small modules written in a C-inspired language; Squeak is more focused on single-VM/persistent-image "personal computing". Plan 9 and Inferno/Limbo appear to lead Squeak in terms of "desktop applications" (document preparation, e-mail, and web browsing)-- at least for a while, there was a group of people who used Plan 9 as the sole desktop environment; it's not clear Squeak has ever been that way.



Best viewed with any browser Proud Donor
davide+receptionist@cs.cmu.edu