Smalltalk: Requiem or Resurgence? {Dr. Dobb's Journal (05/06/06) Chan, Jeremy}

Hans-Martin Mosner hmm at
Fri May 12 20:46:24 UTC 2006

Michael Latta wrote:

>The point is not who's design is better, nor technical issues.  The point is
>that from a user of the system the differences in libraries has negative
>value.  I do not know or care which is better.  I do know that if I could
>take Smalltalk code form one VM to another the market for my work would be
>larger.  The way each VM vendor has chosen to head in their own direction
>means that they do not build a viable ecosystem.  Each vendor's product
>stands alone, and has to build its own ecosystem.
The problem with this comparison is that it is treating Smalltalk as a 
programming language.
It's much easier if you treat it like an operating system or a SQL 
database - it's a platform.

In theory, your C program should just run on HP-UX, Linux, AIX, Windows, 
MacOSX, RiscOS, AmigaOS, ...
Why did all those operating system vendors invent incompatible system 
calls, libraries, file system conventions?

Or why can't you just take your SQL application from ORACLE to MySQL or 
After all, SQL is a standard!

I don't know enough about SQL, but at least in the operating system 
world you can achieve a lot of portability by sticking to POSIX which is 
supported on most platforms.
Similarly, you get pretty good portability in Smalltalk by sticking to 
the ANSI Smalltalk subset.
Of course, GUI widgets etc. are not included in that standard and so are 
But does POSIX include standard GUI widgets? Can you write a GUI 
application in C and port it from Linux to Windows without a lot of work?

I agree with you that it would be great to have easier portability 
between the different Smalltalk systems, so you could switch platforms 
when needed without too much work.
But in reality, switching between platforms has never been easy. 
Actually, the closest thing to effortless platform migration was/is 
*Smalltalk* with its image file which can be run unchanged on a large 
number of platforms! I've done it with VisualWorks, Squeak and 
VisualAge. The two Smalltalk-80 descendants provide much easier 
migration (just snapshot your image and start up on another machine) but 
VisualAge is pretty doable as well as long as you're willing to work 
around the quirks of the different native widgets under OS/2, Windows 
and Unix/X.


More information about the Squeak-dev mailing list