On 2005-01-23, Mystifier <mystifier / users.berlios.de> wrote:
> I could not locate any Self and Ruby comparison. Any links?

In Self really everything is message passing. Unlike Ruby and unlike
Smalltalk! Assignment is a special thing even in Smalltalk. In Self, you
are free to add/modify slots of objects from outside, and assignment is
in fact just a message which does this. (I think so.)

Recently I've been playing with Io (http://www.iolanguage.com/) (the
place where I heard of it is this very list). It has a similar object
model to Self, and is very compact, so it's easy to get a grasp on it
and see how that prototype based object model works. As an addition, the
syntax is very clever and clean. It's in fact a simple sexp-based
syntax, but you won't notice this fact unless you watch heavily.
(Basicly the syntax consists of nothing else just expressions lke "a
b(c,d) e(f)", which means something like "a.b(c,d).e(f)" in ruby (but,
as we know, in ruby there is more syntax than these kind of
expressions); besides, there is some sugaring for more intuitive usage
of operators (which are, of course, ordinary methods). It uses the same
great idea as ruby for separating expressions: you can use either a
semicolon or a newline).

Btw, I hope you know that Ruby has almost full support for prototype
based programming.

Csaba