title: Angular 4 vs React performance - theory vs reality
body: <p>This is basically the same old, same old <code>x vs y, what is faster?</code>, but I do hope my version is applicable. Also, React and Angular differ like GTK and Qt (or even more), and comparing them is stupid - one is an out-of-the-box can-do-anything framework, while the other is a View framework designed to only do that. If my question still is unanswerable or subjective and should be closed, please write me a comment how to improve it in the future, if possible. Thank you.</p>
  
  <p>This is a question about Angular 2+ vs React in terms of performance. My team shall build one SPA for identical functionality with each framework.</p>
  
  <p>Assume:</p>
  
  <ul>
  <li>development time for both versions should be equal / similar</li>
  <li>non-view related functionality (where Angular differs from view-only React) is unimportant to the measurement and development time, updates to the view happen frequently and are the bottleneck</li>
  <li>measured is steady-state performance after initial page-load (so all data for the page is within memory)</li>
  <li>both applications are built the way the relevant handbook would recommend</li>
  <li>client-side rendering only, with mostly dynamic data (so not much server-side rendering or ahead-of-time-compiling)</li>
  </ul>
  
  <p>Javascript VMs are difficult to reason about, but my two questions are exactly about their behavior:</p>
  
  <ol>
  <li>Would there be a clear performance winner after current-gen JIT has done its part (optimizing as far as possible) or would the final performance be equal?</li>
  <li>In the year 2027 we will still use webbrowsers (probably Chrome 256 or Firefox 384). Assume both frameworks still exist and kept their core strategy / mechanics the same as today. Browser Javascript VMs / JIT improved further and further, but I keep my current laptop to measure performance. Which framework would probably win in 2027? Or to rephrase the question: which strategy is theoretically more optimal / 'closer to the metal' (or in this case: closer to Javascript execution models)?</li>
  </ol>
  
  <p>PS: I'm pretty sure in 2027 we will not use either, and this question is also not about which framework anyone should prefer, but only theoretical performance. The question about which framework would be 'closer to the metal' came up one night with friends and should not be used by anyone to make a decision. Never make important  life decisions drunk or late at night. </p>