Re: Object-relational impedence
Date: Wed, 12 Mar 2008 08:23:05 -0700 (PDT)
S Perryman wrote:
> JOG wrote:
> >>On 2008-03-08 21:39:37 -0600, JOG <j..._at_cs.nott.ac.uk> said:
> > A red herring as far as I'm concerned this Robert - after all RM is
> > not an "inference engine" either. What I am questioning whether we
> > need the concept of inheritance /whatsoever/. It does not exist in
> > logic, it has no underlying theoretical justification, and is purely
> > an ad hoc mechanism thrown together at xerox parc.
> 1. Devised at the NCC in Norway, not Xerox PARC.
> 2. Devised because of the influence of academic work on data types (Hoares'
> "record" types) , and noticing things having related properties/behaviours
> in simulation systems.
"Types" tend to rely on similar hierarchical taxonomies (or at least DAG taxonomies) that inheritance does, and *suffer similar problems*. It is difficult to reduce most non-trivial real-world things into such trees/dags because they generally don't fit such, especially over the longer run. Even numbers, the poster child of "types", tend to get ugly if try to create a tree taxonomy with them. Feature sets are a more flexible and natural way to represent and manage variations-on-a- theme. (Disclaimer: I have no objective metrics to measure "more natural" and "flexible" at the moment.)
> So not really ad-hoc (thought went into providing the scheme) .
> > Is it not true that
> > inheritance has lost favour over the years - composition is generally
> > preferred, unless one is defining interfaces (and whether that should
> > still be called "inheritance" is open to debate).
> As a property acquisition/composition scheme, certainly.
> As a type substitutability mechanism, (sadly) no (Java, C# etc) .
> Steven Perryman
-T- Received on Wed Mar 12 2008 - 16:23:05 CET