[Self-interest] Self implementations (was: Self implementation in Python)

Russell Allen mail at russell-allen.com
Thu May 19 22:25:58 UTC 2022

There is a place on GitHub for a Self wiki:


People can add implementations there.

Wasn't there another Self in Java at one point? dSelf or something like that?

One interesting thing about both zigself and PySelf (for want of a name
:) is that they both seek to define a small subset of the Self
distribution as a core - booleans, collections, strings, etc.  


On May 19 2022, at 7:43 pm, Jecel Assumpcao Jr <jecel at merlintec.com> wrote:

> Stephen De Gabrielle asked on Wed, 18 May 2022 08:41:55 +0100
>> @Self-interest list: Is there a list of Self implementations?
> It would be nice to compile such a list and make it available somewhere
> on the main language site.
> In the last few decades new languages have tended to have a single
> implementation. Having an open source version that you can download over
> the Internet and which runs on your computer (PC clone) and operating
> system (Linux, Windows or MacOS) eliminates most reasons for creating an
> alternative implementation. Only if you need it to be faster (like PyPy
> or LuaJit) or smaller to run on embedded devices does the effort make
> any sense.
> Earlier languages had many implementations. Smalltalk-80, for example,
> took a long time to become officially available and even then only on
> high end workstations. So people had to create their own: Smalltalk/V
> (PCs), Little Smalltalk (text-only Unix machines and many
> microcomputers), SmalltalkAgents (Macintosh), Smalltalk/X (Unix X11),
> Dolphin, Smalltalk MT, Object Studio, VisualAge and probably many others
> I have forgotten.
> Other people just mixed Smalltalk features with other languages:
> Objective-C, ObjectPascal/Delphi, Clascal/ObjectPascal, Java, Ruby and
> so on.
> In the same way, I would include in a list of Self implementations
> languages that borrowed a lot from its features but which are not
> actually compatible.
> Beyond the official implementation from Stanford and Sun and the ones
> already listed in this thread I can remember:
> JSelf by Diego Gómez Deck
(the page is currently missing)
> Self for the Java Virtual Machine
> tinySelf0 and tinySelf1 by me
> http://www.merlintec.com/lsi/tiny.html
> a hand crafted parser in C capable of reading all Self 3.0 sources and a
> Self-in-Self testing a thread per object concurrency model, respectively
> I seem to also remember a mySelf and an rSelf, which are terrible names
> to search for.
> Many languages that are prototype instead of class based claim to be
> inspired by Self, but I am not sure I would agree in the case of
> NewtonScript (and Io, which is inspired by it) since they use Lieberman
> prototypes while Self is more similar to "Smalltalk With Examplars":
> https://www.davethomas.net/papers/exemplar.pdf
> This explanation and list doesn't seem to make this separation:
> https://en.wikipedia.org/wiki/Prototype-based_programming
> It is interesting that this list doesn't include ObjectLogo which
> predates Self and is where I first saw the idea of prototype based
> programming (it didn't seem that interesting until I saw Self). Kevo is
> mentioned in the article itself, but is also not on the list.
> -- Jecel
> _______________________________________________
> Self-interest mailing list
> Self-interest at lists.selflanguage.org
> http://lists.selflanguage.org/mailman/listinfo/self-interest

More information about the Self-interest mailing list