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

# Re: "verbing properties" and related issues

- Date: Fri, 2 Aug 1996 10:02:00 PDT
- From:
- Encoding: 29 TEXT

    >This is exactly the reason Multiple Inheritance will not work in a MOO -
    >besides the fact it is much less necessary in MOO than in most OO
    >languages. C++ needs MI because it can't string 'classes' together, like
    >MOO can (As far as i know, i haven't studied C++ that much, yet)

    What do you mean "string classes together"?

    >C++ can handle MI because it just won't compile if there are errors
    >(methods defined on more than one parent, for instance) and the programmer
    >would have to edit it. A MI MOO object might run fine, but if some other
    >programmer alters one or more of the parents, the whole thing might stop
    >working, or worse, give slight errors or destroy a database that has
    >been worked on for months (provided you do that in your MOO, without
    >making backups :)

    This is simply not true.  C++ compiles just fine with MI conflicts, and you
    use the scope resolution operator to pick the proper parent.  ColdMUD has
    MI, and it uses the first parent it finds in a breadth-first search of the
    parent tree.

    Not that I'm for adding MI to MOO.  I've seen _one_ single case where it's
    called for, and that's in making an object into a feature object.  Normally
    under Lambdacore, one has to add a couple properties, in JHcore, a single
    method (and that method has to be adapted).  MI would just let you tack on a
    parent of $feature and use interface methods to tell it which verbs are
    "feature verbs".  I can't think of a single other use of MI that can't be
    better solved with a containment relationship.

- Prev: Re: "verbing properties" and related issues
- Next: $verb_editor:"comment uncom*ment"
- Index: MOO-cows
- Thread: MOO-cows

Home | Subject Index | Thread Index