Top 1K Features Creators Events Podcasts Books Extensions Interviews Blog Explorer CSV

Self

< >

Self is an open source programming language created in 1987 by David Ungar.

#455on PLDB 37Years Old 36Repos
Homepage · Wikipedia · Docs

Self is an object-oriented programming language based on the concept of prototypes. Self began as a dialect of Smalltalk, being dynamically typed and using just-in-time compilation (JIT) as well as the prototype-based approach to objects: it was first used as an experimental test system for language design in the 1980s and 1990s. In 2006, Self was still being developed as part of the Klein project, which was a Self virtual machine written fully in Self. Read more on Wikipedia...


Example from hello-world:
'Hello World' printLine
(| "Hello World in Self" hello = (| | 'Hello World!' print) |)
Example from Wikipedia:
_AddSlots: (| porsche911 <- sportsCar copy |). porsche911 name:'Bobs Porsche'.

Language features

Feature Supported Example Token
Strings ✓ 'Hello world' '
Print() Debugging ✓ printLine
Message Passing ✓
Semantic Indentation X
View source
- Build the next great programming language · About · Search · Keywords · Livestreams · Labs · Resources · Acknowledgements · Part of the World Wide Scroll