4 ms·
Meta's Hack (HHVM) language appears to be no longer maintained
- lallysingh 2y agoHuh, no discussion nearly an hour after posting. Either a time zone thing or a conspicuous silence. Or nobody cares about Hack anymore?
- phowat 2y agoI don't think this was used much outside of meta anyway.
- DaiPlusPlus 2y agoOut of curiosity, just how compatible is Hack+HHVM with unmodified PHP 5/7/8 code?
- ceejayoz 2y agoIt's compatible with PHP 5. They stopped shipping PHP support with PHP 7.
- teqsun 2y agoNot to be terse, but did anyone outside of FB ever care about Hack? Mentally I always just knew "FB built everything in PHP, it got too gunky, they invented Hack to try to solve the issue without needing to rewrite everything" PHP usually ranks pretty high on many "developer hate" polls, so it's not too shocking to me that Hack never got the hype of React or Golang.
- Q6T46nT668w6i3m 2y agoI worked on Hack during my Meta bootcamp and was surprised to learn that many people used and relied on Hack outside of Meta. It didn’t appear to be anywhere near the size and scope of PyTorch and React but the number of users looked relatively large!
- geerlingguy 2y agoAlternate anecdata, I've never seen someone use it outside of Facebook/Meta. I'm sure some people did but PHP 7 solved the performance issues people had with PHP 5, and PHP 8 nuked some of the footguns people complained about all the time, to the point, the few shops who looked at Hack / HHVM (and weren't switching to another language entirely) just stayed on PHP.
- evanelias 2y agoNot sure of the status today, but Slack is/was one of the most high-profile non-Facebook users of Hack, e.g. https://slack.engineering/hacklang-at-slack-a-better-php/ https://slack.engineering/hacklang-at-slack-a-better-php/
- znpy 2y agoThe post is from four years ago however, does anybody have an update on that topic?
- evanelias 2y agoSlack has a few eng blog posts from last year which seem to indicate they still use Hack, among other languages. https://slack.engineering/hakana-taking-hack-seriously/ https://slack.engineering/hakana-taking-hack-seriously/ describes their open source enhanced Hack type checker, which is still actively maintained (most recent commit yesterday). And https://slack.engineering/slacks-migration-to-a-cellular-architecture/ https://slack.engineering/slacks-migration-to-a-cellular-arc... mentions they use a mix of languages: "services in the user-facing request path are written in Hack, Go, Java, and C++"
- psanford 2y agoAs of the beginning of this year, slack still used a lot of hhvm.
- wongarsu 2y agoPHP doesn't have a lot of fans on here. Not sure how popular Hack is in general, but if it is used the users don't hang out here
- nik736 2y agoIs the HHVM still in use at Facebook? Or did PHP catch up?
- letharion 2y agoI haven't looked much at it since it was called HHVM, but I see it also hasn't seen a release since 2016.
- ceejayoz 2y agoI'm not surprised; PHP 7 and PHP 8 brought most of the performance improvements and a lot of the good tweaks into the main language.
- paxys 2y agoIt is maintained. They just do it internally. Latest versions are periodically synced to Github. Most teams at Meta are still using Hack.
- sebstefan 2y agoIs it getting the JQuery treatment now that type hinting is almost fully in php?
- jasongill 2y agoThis really does not come as a surprise. PHP 7 erased the performance gains that Hack had, and PHP 8 brought a lot of the last few missing pieces that helped modernize PHP. Hack was heavily optimized for Facebook-sized setups and was never intended to run in the places that PHP is most often run from (such as cPanel servers), so it never really picked up much traction among the PHP world. Non-PHP developers never even considered it as an option, as they probably didn't consider PHP as an option either. Basically, it was one of those projects that may have been a good idea when it was released (although perhaps just contributing more to PHP might have been the better thing for Facebook to do, but that's a different story), and it's time has now passed. I'm just surprised it took this long for them to end work on it, honestly
- evanelias 2y agoDoes PHP have async/await yet? In my mind that was always a huge advantage of HHVM/Hack which normal PHP completely lacked.
- jasongill 2y agoThankfully, no - IMHO, PHP doesn't need non-blocking or asynchronous execution, as that's what makes it so accessible and understandable
- evanelias 2y agoHuh, I'm surprised by that take. await is one of the easiest-to-comprehend and readable approaches to concurrency. Slack summarized this better than I can, see the async/await section of their post https://slack.engineering/hacklang-at-slack-a-better-php/ https://slack.engineering/hacklang-at-slack-a-better-php/ Without async/await, PHP will remain a bad fit for large-scale applications that need to query data from numerous distinct services or data stores for a single page load without incurring major latency. It was an absolutely essential feature of Hack at Facebook. Lack of async/await in PHP was a huge problem at Tumblr when trying to reduce latency.
- chomp 2y agoAre we really at the point where last commit less than two months ago means something is unmaintained?
- mwksl 2y agoI find it interesting that it’s still getting a few github stars monthly[1]. I wonder if that’s organic discovery or an appetite for an alternative PHP? 1.https://github.com/trending/hack?since=monthly https://github.com/trending/hack?since=monthly
- spunker540 2y agoFrom what I understand it is still a quite popular language at meta, and strongly supported and preferred for lots of development, though definitely never got much traction externally.
- colesantiago 2y agoIt seems to me that this project is still being maintained and it isn't archived, if it is not maintained and not archived then it would present a problem.
- throwaway2016a 2y agoI'm a little surprised HHVM is still around, last time I checked it was barely (if at all) faster than vanilla PHP and PHP now has a lot of the comparible features like progressive type safety and concurrency (to an extent). There are even competing PHP compilers/interpreters/runtimes now like there has been for a while with other languages. I'm guessing there is some benefit to running HHVM on the type of large scale deployments Facebook has or there wouldn't be a need to keep it around.
- conor- 2y agoWouldn't the large amount of existing services written in Hack be reason enough to keep it around? The cost of rewrites at that scale certainly has to be far more expensive than the cost of paying a team to maintain HHVM
- throwaway2016a 2y agoGenerally yes but the languages are similar enough that the refactoring could be automated. Of course, that would create a fair amount of QA and testing work but if you have good test coverage you can mitigate that.
- zpao 2y agoHi, Paul from the Open Source Team here at Meta. HHVM is still in use and there are no changes to the level of maintenance the open source project gets. There's no conspiracy, no quiet quitting. The reality is that we just had some issues that affected our automatic syncing a little while back and HHVM got stuck. Since use outside of Meta is relatively low, unsticking it was just lower priority. But we see that you've noticed and I think the folks working on HHVM internally will get that corrected soon!