On Sat, 30 Jan 2016 23:03:29 +0000 Simon Slavin <slavins at bigfraud.org> wrote:
> On 30 Jan 2016, at 8:13pm, Yannick Duch?ne <yannick_duchene at yahoo.fr> > wrote: > > > In my opinion (which some others share), OO is a bag of > > miscellaneous things which are better tools and better understood > > when accosted individually. Just trying to define what OO is, shows > > it: is this about late binding? (if it is, then there sub?program > > references, first?class functions, or even static polymorphism and > > signature overloading) About encapsulation? (if it is, then there > > is already modularity and scopes) About grouping logically related > > entities? (if it is, there is already modularity, and sometime > > physically grouping is a bad physical design). > > There are a number of problems in using a relational database for > object-oriented purposes. One is that to provide access to stored > objects you need to access the database in very inefficient ways > which are slow and are not helped by caching. You can read about > some of the problems here: > > <https://en.wikipedia.org/wiki/Object-relational_impedance_mismatch> To the extent "impedance mismatch" is real, it's a matter of looking through the wrong end of the telescope. Programming languages have almost universally ignored relations, logic, and constraints, leaving programmers with primitives, pointers, and loops. Which is cause and which effect? Do programmers ignorant of set theory demand primitive languages? Or do primitive languages beget ignorant programmers? I don't know. What I do know is that a programming language with built-in support for relational concepts remains to be invented. --jkl