<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>