69dodge said:
What's wrong with inheritance?
The problem that I have with inheritance is that it breaks all the progress that has been made in creating a mathematical model of programming. It is a good idea, but it uses that infernal creation of the devil, the hierarchical model, not the relational model.
The success of the Relational Database, to me, indicates that a relational model should be the underpinning of all modern programming. Smalltalk was just a bunch of guys modelling programming on a notion of what a language would be if it was based on the real world. Hence, OO just ends up getting bogged down in the end in the same dead ends the hierarchical db did.
The basic idea of OO is good, but the implementation is a disaster, hence the need for single inheritance, since multiple inheritance becomes unworkable, with 'interfaces' being a workaround hack.
The "Third Mainfesto", by Date et al, addresses the problem of mating a programming language to Relational design models, and addressing the issues of OO in a relational programming model.
They also address the inconsistencies that SQL suffers. Apparently, SQL was only a quick hack that was supposed to let them do further work on RDBMS development, while they came up with something better. However, it was rushed out to the real world before they were finished, and now we have to suffer with the many problems of SQL. They are well aware of the deficincies in SQL, and have a second generation language all ready to roll out.
third manifestoalphor dataphor , a free (for evaluation) product that implements the ideas of the "Third manifesto".