Small World: A Little (More) Smalltalk
Lesson 1 footnotes
The way you begin a Java application is of course different on different
platforms. On Unix systems it will usually be a command line statement
such as the following:
java SmallWorld
An optional argument can be given, which if present is assumed to be
an image file. The manipulation of image files is discussed in a later lesson.
The appearence of the browser windows is very different in Small World from
that found in the original Smalltalk-80 language or its later derivitives,
such as Squeek.
Readers familar with the original Smalltalk-80 language will note that
Small World has eliminated a few categories of Smalltalk-80 literals. The
idea of a symbol is gone, replaced by string literals. The idea of an array
literal in Smalltalk-80 has been replaced by the more general array expression,
which is more useful in the initialization of complex structures. Array expressions
are described later in this lesson.
Again, readers familar with Smalltalk-80 will notice that primitives
are handled slightly differently in the Small World system. In Smalltalk-80
there are primitive methods, entire methods that are replaced by the
virtual machine. In the Small World system primitives are expressions,
embedded within other methods. This makes the handling of primitives more
flexible.
This is another difference between Smalltalk-80 and the Small World system.
In Smalltalk-80 there are array literals, but these can only have static values
(strings or numbers or the like). In Small World these have been replaced
by an array expression, which can have dynamically evaluated expressions as
elements. This makes array expressions much more useful for initializing complex
structures. See the creation methods for many windows (such as the
class edit window) for examples of this use.
Other significant differences between Small World and Smalltalk-80 include
a vastly smaller standard image, the elimination of cascaded messages, a
very different browser interface, and some minor differences in the meaning
of certain operations.