An Efficient Implementation of SELF, a Dynamically-Typed Object-Oriented Language Based on Prototypes (1989)
14 points by calvin
14 points by calvin
There are several good papers on Self. The language never got wide use but it was a huge influence on JavaScript, and the people who did the JIT work went on to implement the HotSpot JVM at Sun.
Oh, and David Ungar did some work in Self on using classic animated-film techniques in a GUI — like squashing/stretching objects as they move — which predated those techniques in e.g. iOS by decades.
Yeah the genealogy is a lot narrower than one might expect: a few people and their projects having a huge influence over about 20 years. The Self team had a startup to make a fast SmallTalk vm called StrongTalk. Sun bought the startup and StrongTalk was turned into the fast Java VM HotSpot. Lars Bak was one of the StrongTalk team, and he went on to start Google’s fast JavaScript vm, v8.
(The Self team weren’t the only ones, tho: there was similar stuff happening elsewhere at about the same time. IBM’s JVM was also derived from SmallTalk, and v8 was roughly contemporary with Safari’s JavaScriptCore.)
[…] the people who did the JIT work went on to implement the HotSpot JVM at Sun.
I thought so too and was going to post as such, but then I checked and it seems that it was the StrongTalk gang that did HotSpot?
Everyone’s papers cite each other. Perhaps Sun hired every researcher in the field at the time.
According to Wikipedia, StrongTalk was developed by two of the main Self implementers, people, Urs Hölzle and Lars Bak.
There’s a nice summary of the Self -> StrongTalk links at https://www.strongtalk.org/history.html