TTMs Subset types and OOP

In The Third Manifesto, C. J. Date and Darwen criticize OOP type systems for placing more attributes in subclasses. Intuitively the criticism seems justified, because from a Cartesian product perspective, more attributes implies more possible values. Their point is then, how can a sub-type have more possible values than a super-type? It occurs to me, however, that there is a subtlety being missed. The domain of possible values may be fewer in sub-classes, so long as the additional attributes are considered as part of a more "detailed" representation. In other words, the original representation holds at the level of the super-type (which is utilized in polymorphism), but a more detailed representation may be used in sub-types. Such mangling of representations is not allowed by their suggested type system, but the isomorphism seems to fit situation for OOP. None of this is to say that the OOP model doesn't have its flaws, I only wish to point out that there may be multiple ways of interpreting OOP from the perspective of their type model.

Comments

Popular posts from this blog

Don't Repeat Yourself... Really!

Issues raised by polymorphism in relation land

Camtasia Studio Tips