The latest version of Self is Self "Mallard" 4.5.0 released January 2014. Download now!
Download for OS X
Includes the Self Control.app, Self VM and a prebuilt snapshot.
Download for Linux x86
Includes a Self VM and a prebuilt snapshot.
Use the Source, Luke
All of the Self sources for the VM and for the default Self World are on Github.
Read the Self Handbook
The main set of Self documentation, covers the language and programming environment.
Read the Forum
Read the archive of dicussions on Self, or subscribe by emailing to self-interest-subscribe@yahoogroups.com
Read the Blog
Read the Self blog to keep up to date with Self releases and activity.
Read Academic Papers
Over the years, the Self project has generated many academic papers and talks.
Self is a prototype-based dynamic object-oriented programming language, environment, and virtual machine centered around the principles of simplicity, uniformity, concreteness, and liveness.
Self contains a user interface and programming environment designed for БЂњseriousБЂ« programming, enabling the programmer to create and modify objects entirely within the environment, and then save the object into files for distribution purposes. The metaphor used to present an object to the user is that of an outliner, allowing the user to view varying levels of detail. Also included in the environment is a graphical debugger, and tools for navigation through the system.
The first version of the Self language was designed in 1986 by David Ungar and Randall B. Smith at Xerox PARC. A series of Self implementations and a graphical programming environment were built at Stanford University by Craig Chambers, Urs Hц¶lzle, Ole Agesen, Elgin Lee, Bay-Wei Chang, and David Ungar. The project continued at Sun Microsystems Laboratories until 1995, where it benefited from the efforts of Randall B. Smith, Mario Wolczko, John Maloney, and Lars Bak.
Davd Ungar at Stanford University, 2009
The original Self introduction from Sun Microsystems, 1995
Last updated on Jan 12, 2014 | Based on Foundation | Contact Russell Allen