[EMAIL PROTECTED] wrote:

> I was wondering if someone could provide me with a quick summary
> regarding what is meant by Rebol being "object based" but not "object
> oriented"?

Has first-class objects, i.e. has (limited) encapsulation via use and
other scope trix, has developer-directed delegation / embedding, has no
runtime-supported inheritance.  OOP == inheritance, often class-based.
"Object-based" usually == encapsulation, arbitrary datatype support, some
notion of lifecycle, delegation, but no inheritance / automagic
type-based or graph-based dispatching.  Possibly Rebol could be
considered "prototype-based," which (if anything) is how I would classify
Rebol on the "object language patterns" scale.  Note to the weary:
parents are shared parts of objects.  Prototypes are a superset of
class-based inheritance;  being "object-based" is actually a superset of
being traditionally "object-oriented."  Cf. the Self Papers.  (Google
it.)  For the truly ambitious / warped / lifeless ;-) see Abadi &
Cardelli's object calculus,
http://www.luca.demon.co.uk/TheoryOfObjects.html or similar books /
papers / works that cite them.

Which, if anything, gives the best academic / theoretic supporting
argument to Carl's intuitive argument that (paraphrasing) objects just
aren't where it's at.  Turns out lambda calculus and object calculus with
types are *really, really* hard to reconcile.  My money's on the
functional side, so Rebol and Scheme and (ahem, ick, typing by madmen)
even Haskell win big.

BTW:  language archaeologists and other weirdos ;-) (hey I'm one too!)
should dig up anything they can find on Jon Blow's "FMPL" language and
implementations from circa 91-92.  Eerie similarity to Rebol in many
ways, but basically an event-driven MUD / network application language
based on and syntactically related to Rebol.  Pre-Rebol, this language
did the best job I've seen of reconciling functional programming and
objects.


$0.02,

jb


> Thanks in advance.
>
> ---
> Robert Marier

NP. (complete.) ;-)



Reply via email to