IMHO: If the semantics are different then the name should be different.
> -----Original Message-----
> From: Ernest Friedman-Hill [SMTP:[EMAIL PROTECTED]]
> Sent: Tuesday, September 01, 1998 2:28 PM
> To: [EMAIL PROTECTED]
> Subject: JESS: COOL-like inheritance
>
> Hi Folks,
>
> Just sharing a little bit of info about another Jess 4.2 feature:
> you'll be able to define inheritance relationships between
> deftemplates and between defclasses. Alan Davis was asking about this a
> little while ago, and I just had an insight yesterday about how
> to do this efficiently.
>
> Anyway, so what this looks like is this:
>
> (deftemplate t1 (slot A) (slot B) (slot C))
> (deftemplate t2 extends t1 (slot D) (slot E))
> (deftemplate t3 extends t1 (slot F) (slot G))
>
> Now you can write rules which match on patterns of type t1, t2, or
> t3. t2 has slots A,B,C,D,E, and t3 has A,B,C,F,G. Furthermore, rules
> written to match patterns of type t1 will also match t2 and t3; rules
> that match t2 or t3 patterns won't match the other, or t1.
>
> Similarly, with defclasses. I modified my 'pumps' example Beans such
> that both Tank and Pump inherit from a new class Machine, with one
> property (name). Then you can write
>
> (defclass machine jess.examples.pumps.Machine)
> (defclass pump extends machine jess.examples.pumps.Pump)
> (defclass tank extends machine jess.examples.pumps.Tank)
>
> and 'machine' rules will match either 'tank' or 'pump' patterns.
>
> Any comments on syntax, ideas for extensions, or subtleties, let me
> know. I considered using 'is-a' as COOL does instead of 'extends' -
> any opinions one way or the other?
>
> ---------------------------------------------------------
> Ernest Friedman-Hill
> Distributed Systems Research Phone: (510) 294-2154
> Sandia National Labs FAX: (510) 294-2234
> Org. 8920, MS 9214 [EMAIL PROTECTED]
> PO Box 969 http://herzberg.ca.sandia.gov
> Livermore, CA 94550
>
> ---------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the
> list. List problems? Notify [EMAIL PROTECTED]
> ---------------------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list. List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------