Exposing COM via XML-RPC or Something Else

Gordon McMillan gmcm at hypernet.com
Sun Dec 5 09:32:23 EST 1999


William Tanksley wrote:

> On Sat, 4 Dec 1999 16:18:45 -0500, Gordon McMillan wrote:

> >"COM" is many (too many) things. At it's core, though, COM is a
> >C++ vtable exposed to C. In that sense it is a binary standard,
> >and very simple.

> I've still got some room to convince my friend to use something
> aside from COM, and I'd like to cheat by asking you for the
> answers, since you sound knowledgable.  Would you recommend COM
> over CORBA for a low-level object system?

Your "friend" appears to have spoken. I have no experience 
with the guts of CORBA, so I can't say anything about that. 
The guts of COM are actually quite simple, but have been 
endlessly obsfucated by MS market-speak. If you want to 
untangle it, read Don Box.

Personally, I'm fascinated by the history. When CORBA was 
first a gleam in somebody's eye, DCE was a hot number and 
it was widely expected to be the core of CORBA. But politics 
killed it. Guess where DCE shows up now? Hee, hee. DCOM.

If you read the Orfali et al book on Distributed Objects (a 
better book than it appears, actually), you would find that 
almost none of the stuff they touted as being the crown jewels 
of a CORBA enabled world has come to pass. All those hopes 
are now carried on the back of Java Beans (well, EJB, the 
subset of Java Beans that will run over IIOP).

So now for some Python content: notice that all the language 
facilities necessary for those Bean thingies are right there in 
Python. We don't even need no stinking "Design Patterns" 
(hock-ptuie, that's like calling a screen door an "air 
conditioner"). All we need is an IDE for the keyboard-impaired 
;-). We've already got the cross-language bindings, as long as 
you're willing to use COM or CORBA for the glue.

> >CORBA was a full blown spec in 89, but didn't have any 
> >implementations until 95 or so. COM was working in 90, but if it
> >ever had a full blown spec, I must've missed it.
> 
> COM's had a full ISO spec for quite some time.  MSFT gives it
> away on its website.  My friend is quite impressed with it, and
> he's normally a pretty rabid MS hater.

True, and I've looked at it. It's not at all the same thing as what 
CORBA has (which tries to map out all the optional services 
and how they fit, etc.). Of course the latter is so abstract that 
it leaves plenty of room to build conforming but non-
interoperable implementations.

As a "start at both ends and work towards the middle" kind of 
guy, I regard COM and CORBA as object lessons <pun 
intended> on why neither the "bottom up" nor the "top down" 
approaches to design work.

- Gordon




More information about the Python-list mailing list