The html5 assertion is bunk: there are things that can not even be expressed in html5/js which are ubiquitous in native apps. An example is true honest to god no bs no excuses no hand waving thread spawn. As in truly concurrent threads, as comcurrent as the os allows, not some interstitial vm allows, not js worker threads. The j2se JVM gets that right but Ruby and Python do not, but there are no shortages of excuses as to why.