Brendan Eich wrote:

> > That's one of the reasons that made me start my XPLC project. If XPCOM
> > had been more of a standalone project that isn't so specific to Mozilla
> > (or anything else), there would have had only a few other more technical
> > points to fix and I wouldn't have even started XPLC.
> 
> Who else is using XPLC?  I really don't know.  Any chance of
> (re-)unification?
> 
> I'm not accusing you of NIH syndrome, but it is a real problem, in open
> source as well as in closed source.  APR exists instead of being a use
> of NSPR, IMO, due to NIH + unbalanced license phobia.

I agree. I thought about it very hard before starting that project (for
nearly two years in fact, during which I contributed to XPCOM when I
could manage to), but the "few other more technical points to fix" could
be pretty radical to some people.

For example, I decided against any form of exception support, COM's
HRESULT and XPCOM's nsresult being non-C++ examples. I *know* this just
about prevents implementing transparent remoting, and might be
troublesome for some language bindings, but I evaluated this regarding
the complexity and the level of success existing approaches had, and
decided that lowering the barrier of entry to turning a regular library
or executable program into XPLC was a better thing.

The idea is that an imperfect (but okay) component system that get used
widely and pervasively is infinitely better than even a perfect one that
nobody uses. XPLC thrives toward simplicity and efficiency, so that
there are NO EXCUSES for someone not to make some component (in the
largest sense, like a DLL library) an XPLC component.

Now, would Mozilla.org accept a patch that removes all traces of
nsresults from Mozilla, causing massive interface rearchitecting in the
process?

That's just one part of my reasons, but one I feel is pretty
representative of the others.

Note that there is also CrystalSpace SCF (Shared Class Facility) system
that nearly did what I wanted, but was too tied to another project and
is still a tad too complicated to use for my "low barrier to entry"
goal.

-- 
"World domination. Fast." -- Linus Torvalds

Reply via email to