> So would I be right in thinking that XPCOMM is a "portable language" the
> way early C was meant to be before platform specific variations began
> creeping in?  

No, it is a component architecture that separates interface from
implementation. 
Where the implementation can change without affecting the interface.
You have a clearly defined interface and a component that implements
that interface.
This component can span across languages and compiler boundaries.

> In other words you have one language, you write mozilla
> aps in one code base, and the you just recompile that code base once for
> each platform you want to run your app on?

Well, there are many layers to that statement. On the lower level yes,
kind of.
You have your components that are the application foundation or
framework.
In mozilla's case most of the xpcom components are implemented in C++
which are compiled into individual platform specific binaries. However,
there are also components implemented in javascript.
These are obviously not compiled and are platform independent.

Then you have a higher level layer that uses javascript, xul, css, html,
rdf etc. This layer is a cross platform environment sitting on top of
xpcom. An application author need not worry to much about lower level
stuff. Here is where the web technologies comes into focus. The mozilla
browser for example uses xul, css and images (gif's, jpg's and png's) to
create the apps UI (which is drawn by gecko just like a web page is) and
javascript to provide the functionality at the UI level and a bridge
called xpconnect which lets you instantiate lower level xpcom components
(deemed scriptable) which provide the heavy duty application services. 

> So by "non mozzilla developers leveraging mozilla xp technology" this
> person means ordinary developers having the opportunity to easily make
> more skins/themes for customized versions of netscape, or maybe a
> customized pop up window or something like that?

Not sure what an `ordinary developer' is. I would say perhaps `web
developers'.
You can make more than just skins and popup windows. Applications that
run on top of mozilla are called packages. 

There are many examples:

Chatzilla: http://www.mozilla.org/projects/rt-messaging/chatzilla/
Jabberzilla: http://jabberzilla.mozdev.org/
Chameleon:  http://chameleon.mozdev.org/

If you look at mozdev.org, most of the projects there are packages
running on top of mozilla.
This site was created to provide a home for these mozilla "packages".

Hope this helps.

--pete

Reply via email to