Sun and Oracle Community Voices How to Buy Log In United States [Change] English

»  Spotlight Articles
»  Projects
»  Publications
»  People
»  Awards
»  Events
»  Downloads
»  Internships
»  Contrarian Minds
»  About Sun Labs

The Self 4.0 Smalltalk System



The Self 4.0 Smalltalk system comprises a translator, written in Self, which translates Smalltalk code to Self code, and a set of Smalltalk classes. Most of the Smalltalk classes are based on those included in GNU Smalltalk 1.1.1. There are `core' classes for collections and magnitudes, but little else; this is not intended to be an industrial-strength Smalltalk system. The Self 4.0 Smalltalk System has been built for several purposes:

  • to provide a freely-available system that may be used to teach Smalltalk,
  • to hearten Smalltalk programmers to the prospect of learning Self by demonstrating the linguistic proximity of Self to Smalltalk, and
  • to showcase Self 4.0's adaptive optimization technology.

To that end, we have compared the performance of our Smalltalk system relative to ParcPlace ObjectWorks Version 4.1 by measuring the performance of several benchmarks. To allow the Self adaptively optimizing compiler to analyze the code, each benchmark was run 20 times, and the best time was used for the comparison.

Below is a description of the benchmarks. Click on the name to get the source.

  • Diff is an implementation of the file comparison algorithm in the Unix diff utility.
  • DeltaBlue is a constraint solver developed by John Maloney for his dissertation.
  • Richards is an operating system simulation originially written to test BCPL compilers by Martin Richards.

Benchmark               Performance 
                     (bigger is better)

diff                        107%
deltablue chain test        146%
deltablue projection test   217%
richards                    274%
Objectworks is a trademark of ParcPlace Systems, Inc.
For more information, see Self 4.0 Smalltalk Emulator.