
The Design and Evaluation of a High Performance Smalltalk System [pdf] - luu
https://www2.eecs.berkeley.edu/Pubs/TechRpts/1986/CSD-86-287.pdf
======
Rochus
They also implemented a fast Smalltalk VM in 1983 which is described in this
book:
[http://sdmeta.gforge.inria.fr/FreeBooks/BitsOfHistory/BitsOf...](http://sdmeta.gforge.inria.fr/FreeBooks/BitsOfHistory/BitsOfHistory.pdf).
It influenced the Self VM which influenced the Java HotSpot and the JS V8 VM.

EDIT: here is an interesting talk about the Self project and its origins:
[https://dl.acm.org/doi/10.1145/1238844.1238853?dl=GUIDE&Want...](https://dl.acm.org/doi/10.1145/1238844.1238853?dl=GUIDE&WantType=Proceedings&coll=GUIDE&part=series&CFTOKEN=60061704&title=HOPL&type=series&idx=SERIES003&CFID=32568898)

------
rjsw
Browsing the next level up of the URL I also found this [1] that I had not
seen before, I have a paper copy of the document for this thread.

[1]
[http://www2.eecs.berkeley.edu/Pubs/TechRpts/1986/CSD-86-297....](http://www2.eecs.berkeley.edu/Pubs/TechRpts/1986/CSD-86-297.pdf)

------
joshmarinacci
Anecdote: I met David Ungar at OOPSLA a couple of years ago when it was held
in Portland. He's a super cool guy and let me pepper him with questions about
Self, Smalltalk, and experimental language ideas.

------
jecel
The processor described in this thesis, SOAR (Smalltalk On A RISC), has been
retroactively renamed RISC-III to explain why the current version is RISC-V.

~~~
rjsw
There is also a report on RISC-IV (SPUR) [1] from the same year.

[1]
[http://www2.eecs.berkeley.edu/Pubs/TechRpts/1986/CSD-86-273....](http://www2.eecs.berkeley.edu/Pubs/TechRpts/1986/CSD-86-273.pdf)

------
markhahn
self >> java

~~~
cpufry
idgi

~~~
CalChris
_Self_ was a project that David Unger, the author of the above cited thesis,
did first at Xerox PARC, then at Stanford and then Sun Microsystems.

I think _Self >> Java_ means that _Self_ was better, more important, more
interesting, more something than _Java_.

[https://en.wikipedia.org/wiki/Self_(programming_language)](https://en.wikipedia.org/wiki/Self_\(programming_language\))

[http://www.selflanguage.org/](http://www.selflanguage.org/)

~~~
jecel
When Sun killed Self in favor of Java the justification was that Self needed a
24MB workstation at a time when most clients still had 8MB machines. Java was
tiny in comparison.

I complained that Java didn't do much beyond animating an odd little man and
predicted that by the time it did half as much as Self it would need twice the
memory.

~~~
CalChris
Unger gave up his professorship at Stanford at the behest of Bill Joy to move
Self to Sun. Then they cancelled the project.

~~~
jmcguckin
I seem to recollect that Dave didn’t get tenure at Stanford - that may have
influenced the decision to jump to Sun

~~~
CalChris
That's not what Ungar himself said in the talk he gave at the VM seminar at
Berkeley.

[http://www.wolczko.com/CS294/](http://www.wolczko.com/CS294/)

It's also covered in this Self timeline:

[http://kitakitsune.org/sync/ebooks/SELF.pdf](http://kitakitsune.org/sync/ebooks/SELF.pdf)

