From: Buc Richards
Subject: Comparison of CLOS and New Flavors
Date: 
Message-ID: <4640@lindy.Stanford.EDU>
Two years ago I did OOP in New Flavors on a Symbolics (I love that
environment), well now I have been reading Sonkya Keene's book -Object
Oriented Programming in Common Lisp-, and it sure seems familiar.

So how close are they?  Any comparisons would be appreciated.

        Buc Richards                              @ @
        Supercomputer Support Staff                 >
        AIR                                        -

From: Malcolm Slaney
Subject: Re: Comparison of CLOS and New Flavors
Date: 
Message-ID: <34538@apple.Apple.COM>
In article <····@lindy.Stanford.EDU> ·····@lindy.Stanford.EDU (Buc Richards) writes:
>Two years ago I did OOP in New Flavors on a Symbolics (I love that
>environment), well now I have been reading Sonkya Keene's book -Object
>Oriented Programming in Common Lisp-, and it sure seems familiar.
>
>So how close are they?  Any comparisons would be appreciated.

As near as I can tell.....CLOS is the superset of all existing lisp 
object oriented extensions :-).  This only makes sense considering the large
number of Lisp vendors out there (including Symbolics) with large number
of existing programs.

Gregor (and the rest of the committee) have been doing an amazing job but
Common Lisp, The Standard, keeps getting bigger and bigger....

								Malcolm
From: Barry Margolin
Subject: Re: Comparison of CLOS and New Flavors
Date: 
Message-ID: <28870@news.Think.COM>
In article <·····@apple.Apple.COM> ·······@Apple.COM (Malcolm Slaney) writes:
>As near as I can tell.....CLOS is the superset of all existing lisp 
>object oriented extensions :-).

Not quite.  There are a numberof features in Flavors that don't exist
in CLOS.  Symbolics sent a document, "Getting Ready for CLOS", to
their customers a couple of months ago (they also gave out copies at
the SLUG conference in June).

The most noticeable difference between Flavors (old and new) and CLOS
is the lack of SELF.  CLOS permits methods to be specialized on the
data type of more than one argument, so there is no distinguished
argument that should be SELF.  A corollary to this is that it SELF's
instance variables (called "slots" in CLOS) are not automatically made
accessible as if they were local variables; the macros WITH-SLOTS and
WITH-ACCESSORS can be used to make a particular variable's slots
accessible as variables.

Various New Flavors facilities that exist only for compatibility with
Old Flavors do not exist in CLOS.  For instance, the SEND function
doesn't exist.

CLOS doesn't have any of the DEFxxx-IN-FLAVOR macros.  They don't
really make much sense when methods aren't associated with particular
classes.  CLOS also doesn't have wrappers.

Many DEFFLAVOR options don't have analogous DEFCLASS options.  Some of
these are esoteric (e.g. :SPECIAL-INSTANCE-VARIABLES, which I think
was created just to make it easier to flavorize Zwei), but others may
have been used by many users (e.g. all the :REQUIRED-xxx options).

Barry Margolin
Thinking Machines Corp.

······@think.com
{uunet,harvard}!think!barmar