I was at Box at the "peak" of the HHVM hype. Honestly, the biggest thing that doomed HHVM in my eyes was lack of macOS support. You simply couldn't run it on your MacBook. Invariably, that meant you had to have a VM somewhere running it, and that made debugging compatibility issues really difficult. Finding and reporting issues was a grueling process and made it almost impossible for most folks to offer meaningful contributions.
When PHP 7 was announced, all the attention that was on HHVM was split between HHVM and the official Zend solution. Folks didn't want to take up HHVM support if PHP 7 turned out to be amazing. IIRC, Etsy–who employ(s|ed) Rasmus Lerdorf–was a major holdout and drove a lot of mindshare away from HHVM. By the time HHVM got to a point where it was "reasonably good" to work on, PHP 7 was out. And the performance was pretty much comparable for most workloads.
Nobody really ever cared about Hack. Nice things like compiling your PHP code into a sqlite database (I forget what they called it) was really hard to do for a codebase that didn't start on HHVM or used many dependencies. I remember bumping into some unfortunate performance issues around regular expressions and spooky Unicode support bugs. The benefits weren't really compelling and the drawbacks were hard to overcome.
At the end of the day, it was just bad timing (or, you could argue "too little too late") and being developer-unfriendly. Getting your Drupal site moved to PHP 7 was an infinitely simpler choice than getting it running on HHVM, even if HHVM had a 20% perf advantage.
I think the transpiler version targeted C++?
In the paper they mention trying to limit the code size to 10% of that and getting ~60% of the baseline perf.
However, they got this number by simply dropping to the interpreter for the rest of the code. I'm curious what kind of figures they'd get if they got to this 10% goal by being more aggressive in the type guard widening pass.
https://research.fb.com/publications/hhvm-jit-a-profile-guid...
Or the paper itself?
https://research.fb.com/wp-content/uploads/2018/04/hhvm-jit-...
The linked page gives a layman's explanation of the research, which is going to be accessible for the general HN audience.
Why not just link to the source code directly if you're that hardcore and don't care about any higher level description? Or how about a hexdump of the binary?
Commentary is useful.