The DOM and the victim, the iconoclast and the believer

David Brownell david-b at
Sun Jan 16 03:39:59 GMT 2000

As Ray implied, IDL wasn't originally intended for same-address-space
calls, except to stubs for remote objects ... as I can testify, having
worked on the original design.  (A long time ago!  Nowadays, I tell
folk that the web delivered what we had wanted CORBA to deliver, before
it got strange.  I've observed that always happens with RPCs; some
lusting after world domination seems to enter the picture, making
bottom-up-growth fail.)

However, note that there should be no problem with a DOM L1 client
invoking a DOM L2 server, since the on-the-wire protocol for those
existing methods didn't change.  And if an L2 client asks whether
it server has L2 functionality, it can avoid ever seeing the system
exception indicating that an L1 server doesn't know about the new
methods.  (Didier, you implied that functionality is missing -- not!)

Re the problems of defining a cross-language binary-compatible runtime
that has a natural versioning model as well as an API that maps cleanly
and efficiently to C++, Java, C, and the other languages that folk have
demanded CORBA address ... well, let's just say that memory management
is only one of the nasty problems that causes exquisite agony, and say
that despite all the patents filed for in that area, no solution works
particularly nicely.  Most "ABI" standards (ABI == Application Binary
Interface) only handle a small set of those issues, and haven't caught
on well; to get a multi-ORB ABI going has provably demanded more than
any vendor has yet wanted to support.

That said ... I think I would agree that changing already-published
interfaces was pretty much against the spirit of IDL.  It'd have been
much more natural to define a new module (C++ namespace, Java package)
that inherited the old interfaces and added new methods:  no change
of current interfaces/contracts.  IDL has multiple interface inheritance
to allow that style of evolution, among other reasons.

> And you, what are you?

I've been a victim in this case (don't use JDK 1.1 if you need to mix
DOM implementations with different versions, JDK 1.2 is needed); and
certainly an iconoclast (see above).  And there's perhaps too much
cynic in me lately ... ;-)

- Dave

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: or CD-ROM/ISBN 981-02-3594-1
Please note: New list subscriptions now closed in preparation for transfer to OASIS.

More information about the Xml-dev mailing list