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

Re: Shared/local;class/instance



    I believe we ought to pick a consistent set of names for these
    :allocation types and keywords. I believe that the pair
    shared/local makes a little more sense in that I wouldn't expect
    novices to know or remember that a class-allocated slot would be
    visible to the instances and hence shared.

I can't imagine them knowing anything else after they read the
documentation once.  And it is more important to have only a single set
of words than to have a simple property of the current pair used as an
alternative.  So once again I vote for instance/class rather than
local/shared.

    I believe that things like :dynamic or :procedure, to pick up
    on Danny's suggestion, are of a nature orthogonal to
    :shared/:local, because the latter speaks of the scope of the slot
    rather than of any implementation technique.  Continuing in this
    vein, it seems that many :allocation keywords ought to be allowed:
    why cannot a :shared slot be :dynamic as well?
 

I answered your last question earlier -- referring to the use of dynamic
as an implementation tradeoff that is not relevant for shared slots.

    Shall we extend the :allocation option to be either a single
    allocation-type or a list of them?

I don't think we need yet another programming language (i.e. a method
for compostion) for this option -- simple extensibility is enough.  I
would rather use the symbol that specifies the option as our means of
referring to the type of slot, rather than another word that refers to a
property of that kind of slot.