On Thu, 11 Jan 2001, John Bandhauer wrote:

> Funny, I was just writing about this yesterday. See my reply in
> this group to the thread:              "Re: runtime/startup
> loading of typelibs".

hehe, that's me :)

> 
> The short answer is that I don't think it is valid to assume that
> you can do such leveraging. Mozilla has a limited set of
> interfaces that are (or will be) frozen. It is not intended to
> support being loaded and run by other processes. Netscape is not
> shipping a system library here - it is shipping a browser.
> Mozilla is not (at this point) claiming that the binaries shipped
> by vendors can be used as system libraries.

IE is a browser too. It's the same thing. trust me.

> 
> The mozilla 'embedding' newsgroup is a good place to discuss the
> freezing of interfaces.
> 
It's on embedding now :)

Every version of IE breaks everything else, i'm sure (never developed against
it).

Speaking myself as an embeddor, it's completely not a problem. There are
incompatible libraries all the time. The solution is to install multiple
versions. I have *zero* problem specifying something to the effect of "Sash
works with this version of mozilla and no other". This is arguably a good thing
-- a typical Linux machine may have a whole pile of Python versions, a whole
pile of Tcl versions, a couple copies of libc ... :)

The rule is supposed to be that any shared library has a version number, and
that across major versions everything is compatible. This isn't realistic for
mozilla. But specifying a major release ("We only work against 0.8" or
hopefully soon "We work against 1.0") oughtta do it.

I note that in theory in COM design, at least once things are released
(conceptually to me that means post-1.0) the interfaces *should* be
frozen. Changes to them should be represented by changing the version numbers
of the interfaces (nsIFoo2). I've never been convinced (and yes I've read all
of Booch/Gamma/whoever's fun books) that this is a very sustainable development
model -- i think supporting old interfaces gets to be a pain in the ass.

Nonetheless, it has always seemed to work out in the Unix world ...




ari



Reply via email to