[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(long) CLOS Declaration Proposal Text



This is a good beginning.  Not being a fan of machines that require
declarations, I'm going to keep a low profile in this discussion, but
I do have a couple of comments/criticisms for you.

    5) If method combination is prohibited for a certain method,
    any overhead which is needed to support method combination
    in the general case could be avoided.

I agree that this is a non-issue.

    (CLASS FOO X)

I think (EXACT-CLASS FOO X) has a lot less potential for confusion.

    a user may want to restrict a particular name to be a generic function

I don't see why.  I suggest leaving this out unless there is a good
reason for it (which should be articulated).

When a user creates a subclass of a "staticized" class, rather than
changing the semantics in some unclear way, I suggest signalling an
error if there is a conflict between the semantics frozen into the
superclass and the semantics that would exist if the superclass had not
been "staticized".  The design principle here is that adding a
"staticize" declaration to a working program shouldn't change what it
does, only how fast it does it.

The name MAKE-STATIC isn't the best.  To me, it connotes a function that
returns an object that I can hand to the WRITE-SOUND function and get an
ugly noise from the speaker in my console.  FREEZE-CLASS would be better.