Wednesday, January 7, 2004

More on the Theory of Everything...


Early and Adopter wonder about a unification of relational, object-oriented, and XML models:  


To get unification in physics, the primary tool has been the particle accelerator.  Maybe if we slam a SQL and VS box together at 99% of the speed of light, something interesting will happen.  What you learn from a supercollider is that things that are completely different (water and wood) are really made out of the same sub-atomic particles. [Sean 'Early' Campbell & Scott 'Adopter' Swigart's Radio Weblog]


I think the analogy may contain the answer. You see, programming is chemistry, not physics. That is, it’s a fundamentally practical art, rather than a theoretical one. This is the reason that the OO designs of the 90s failed to scale – the OO physicists were smashing two hydrogen atoms together to make helium, but the rest of us wanted a car. It’s hard to make a car out of helium.


My point is that we already know what the subatomic particles are: ones and zeros. There’s an excellent level of conceptual purity there. You can even talk about “atoms” like Streams, Tuples, and Unions – but you still have to do the chemistry to bake up a real system. The problem is that when you start to group those ones and zeros into the higher-order constructs that you need, you wind up with things that have fundamentally incompatible properties – transactions versus distribution, objects versus relational, oil versus water. So I’d have to say I’m with Tim Bray on this one.



No comments:

Post a Comment