Monday, September 11, 2006

Sun release Strongtalk VM into OpenSource

Sun has released the Strongtalk VM as Open Source in September 2006. The Strongtalk VM executes Smalltalk much faster than any other Smalltalk implementation (at the time of its release), using an advanced inlining compiler based on type-feedback technology. See

for more info.

The current system was developed in secret at a small startup company, Animorphic Systems (officially LongView Technologies, Inc.), that was started in 1994. Unfortunately for Strongtalk, the rapid and unexpected rise of Sun Microsystem's Java forced Animorphic to halt work on the Strongtalk system before it was ever released. Animorphic was acquired by Sun Microsystems in 1997, and parts of the Animorphic virtual machine technology became the core of what is currently Sun's production Java virtual machine implementation (it made it into the Hotspot Java Jitter/dynamic optimizer).

The VM is a mixed-mode system, with a fast interpreter as well as dynamic
compiler that was invoked based on dynamic profiling info. The only previous application of similar technology was Self, which was entirely compiled and had a huge footprint.

The Strongtalk VM did not make use of the type system at all; typing was strictly optional. Method dispatch was based on inline caches, including PICs. All code was represented internally as mixins, and any class could be used as a mixin as well.

Benchmarks showed that we were 2.5-4 times faster than commercial Smalltalks at that time (Digitalk, ParcPlace (now Cincom) and IBM).

No comments: