[comp.lang.smalltalk] Typed Smalltalk at OOPSLA

johnson@p.cs.uiuc.edu (09/14/89)

The goal of the Typed Smalltalk project is to build an optimizing
compiler for Smalltalk.  We are not trying to invent a new programming
language, and we consider the Smalltalk programming environment just
as important as the language, so we expect the browser and debugger
to work pretty much like in Smalltalk-80.  The major difference
that the user sees from Smalltalk-80 is that methods have types; the
compiler needs this information for optimization.  Fortunately, we
have had great success with type inference, so the type system should
not destroy the advantages of Smalltalk for rapid-prototyping.
The compiler produces "good" code; it is very fast when it works.
As is typical of university projects, the compiler is still unreliable,
but there are good reasons to hope that it will be reliable soon.

The compiler currently runs inside Smalltalk-80 and produces machine
language that can be executed from user primitives.  The result is
esentially the ability to write user primitives in Smalltalk.  Our
long term goal is to compile the entire image and ignore the interpreter,
to make it easy to integrate Smalltalk with other languages, and to
make it easy to run Smalltalk programs outside the image, but we still
have a bit of work to do before we achieve these goals.

I will be at OOPSLA and am interested in talking with people about
Typed Smalltalk.  Monday is completely open.  Since many people
are coming later, a "birds of a feather" session during an evening
might be a better idea.  In any case, you can come and look for an
announcement or you can try to get in touch with me before-hand.

Ralph Johnson  -- University of Illinois at Urbana-Champaign
johnson@cs.uiuc.edu       (217) 244-0093