<html><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
</head><body bgcolor="#FFFFFF" text="#000000">
<blockquote style="border: 0px none;"
cite="mid:CAEXw-AB2HQy0QUMWMqfbG+BG9FX6NBxAst-EaSVOarxSTz1hqA@mail.gmail.com"
type="cite">
<div style="margin:30px 25px 10px 25px;" class="__pbConvHr"><div
style="width:100%;border-top:2px solid #EDF1F4;padding-top:10px;"> <div
style="display:inline-block;white-space:nowrap;vertical-align:middle;width:49%;">
<a moz-do-not-send="true" href="mailto:n.nethercote@gmail.com"
style="color:#485664
!important;padding-right:6px;font-weight:500;text-decoration:none
!important;">Nicholas Nethercote</a></div> <div
style="display:inline-block;white-space:nowrap;vertical-align:middle;width:48%;text-align:
right;"> <font color="#909AA4"><span style="padding-left:6px">2018
March 9 at 20:02</span></font></div> </div></div>
<div style="color: rgb(144, 154, 164); margin-left: 24px;
margin-right: 24px;" __pbrmquotes="true" class="__pbConvBody"><div><!----><br>What's
your definition of XPCOM?</div></div>
</blockquote>
This is basically what I'm asking Kris. I define it as the system that
Firefox uses to make intra- and inter-language calls between C++ and JS
via XPIDL and XPConnect. I'm interested in what else it provides that
makes it so indispensable.<br>
<br>
<blockquote style="border: 0px none;"
cite="mid:CAEXw-AB2HQy0QUMWMqfbG+BG9FX6NBxAst-EaSVOarxSTz1hqA@mail.gmail.com"
type="cite">
<div style="color: rgb(144, 154, 164); margin-left: 24px;
margin-right: 24px;" __pbrmquotes="true" class="__pbConvBody">
<div>Look in xpcom/, there is a ton of stuff in<br>there that is
unrelated to XPIDL...<br></div>
</div>
</blockquote>
Indeed, but that doesn't tell me how much of XPCOM would remain
essential to Firefox if we no longer used XPIDL.<br>
<br>
For example, XPCOM supports component registration and overriding at
runtime. But it isn't clear that Firefox needs those features, now that
it no longer supports XUL extensions (unless perhaps for system
extensions).<br>
<br>
And xpcom/ contains a ton of stuff, as you say. But it isn't clear how
much of it is core to XPCOM and how much just happens to live in that
directory.<br>
<br>
I'm not playing the devil's advocate. I'm genuinely curious about the
extent of XPCOM's feature set (and how well it aligns with Firefox's
current requirements).<br>
<br>
-myk<br>
<br>
</body></html>