[REBOL] Re: Speeding up code
From: joel:neely:fedex at: 21-Feb-2002 9:45
Hi, again, Gabriele,
Gabriele Santilli wrote:
> Well, I think users don't expect this behavior because they are
> used to the term "object" as used in OOP (and in particular in
> class-based OOP).
I'd say that most people ONLY know the term "object" in terms of
the class-based OO model. People (the minority) who know about
other options for "objects", such as prototype-based or delegation-
based models, won't have the problem you're addressing. There
has been significant work in a variety of ways of understanding
objects and how to use and implement them.
Unfortunately, the (numerical) predominance of c and c++ has led
most people to assume that dynamic data structures require pointers
and objects require classes.
> Not to go against Joel, ;) but if RT actually named OBJECT! as
> CONTEXT! instead this confusion would not exist...
By "this confusion" I assume you mean the issue of initialization
that Sunanda raised. (The "other confusion" I've addressed in a
separate post. ;-)
It seems to me that RT had two options:
1) Give things completely different names, to avoid leading people
to think they understand things and bring in irrelevant baggage.
2) Give things conventional-sounding names, to help people make a
connection with what they already know.
This choice is not specific to REBOL. I've heard it claimed that the
designers of Java deliberately chose to make it resemble c++ rather
than Smalltalk was to avoid scaring off people whose understanding of
programming was limited to c/c++. That strategy appears to have
worked for them!
But choosing option #2 implies the need for clear explanations and
documentation to help people understand *how* things are similar to,
and different from, what they already know.