PS, standing for "Portable Smalltalk" or more aptly "Peter's Smalltalk", was PARC's first and only implementation of Smalltalk-80 on a conventional (rather than microprogrammed) processor.
It was developed by
PeterDeutsch and
AllanSchiffman circa 1982
although Peter did almost all of the work in the end. They published a paper about it in the 1984 ACM Principles of Programming Languages conference called "Efficient Implementation of the Smalltalk-80 System".
http://www.daimi.au.dk/~ups/OOVM/papers/deutsch-schiffman-popl84.pdf
PS pioneered
JustInTimeCompilation (which the paper calls "
DynamicTranslation"),
InlineCaching for message sends (i.e., polymorphic function calls) and multiple context (i.e., reified activations) representations. Subsequent implementations of the
SmalltalkLanguage and Smalltalk-like languages would use all of these techniques.
PS was written entirely in
AssemblyLanguage for the Motorola 68000. It was originally targeted to a bare metal (no OS) SUN-1 workstation hand built by Allan from Andy Bechtolsheim's second set of PC boards. Later it would be rehosted on the SUN-2 running SunOS and shipped as
ParcPlace's first product, Objectworks version 2.3. It wasn't portable, of course, but the successor implementation --
HighlyPortableSmalltalk -- was.
Other people who worked on PS were Mike Braca, Bob Hagmann and Mike Roberts. The port to the Sun-2 was done by Ron Carter and Russ Pencin, then of Xerox in Texas, later of
ParcPlace.
Contributed by
AllanSchiffman on 3-Aug-02.