Wow! Facebook devs have rewritten and fixed PHP, releasing it as new language called “Hack” today
Exciting stuff is happening: Some years ago Facebook has released an early preview of HipHop, a virtual machine that precompiles PHP and seriously changes the game. While HipHop has become a serious and stable tool in the last months, some rumours about “a new programming language, built on top of PHP” have made the round.
Today, Facebook has officially released this awesome project: HACK is there! Not a completely new language, it’s more like a much much better PHP. The Hack -crew has taken PHP, rewritten it (for the HipHop virtual machine), removed lots of the crappy stuff, and added excellent, professional features while still being 100% backwards compatible to “native PHP”. Side-fact: They even removed all the mysql_ and mysqli stuff (yeah!), but then got complaints from the PHP community and re-implemented mysqli.
Why is this so awesome ? Because the biggest PHP-driven website in the world has seriously fixed PHP, and they have open-sourced (!) it today. Plus the dramatic fact that Hack runs only inside the HipHop virtual machine, which also improves PHP dramatically. Plus the fact that this is not a hobby project, it’s made by a billion dollar corporation that pumps a lot of time and money into PHP. Thanks!
Ladies & Gentlemen, we enter the “Postmodern PHP” era now (as called in Keith Adams’s excellent talk about the future of PHP). As this is a very fresh and ongoing event I will update this article after a deep jump into the Hack documentation.
- Homepage of Hack (including install tutorials, quickstarts and a documentation)
- A quick interactive tutorial on Hack
- Official release statement on the Facebook dev blog
Older stuff that might be interesting in this context:
- Talk of Julien Verlaguet (creator of Hack), Youtube video
- Slides of that talk
- Even more interesting slides, showing syntax etc. by Keith Adams of Facebook
Great news! @everyone: please upvote these issues in order to make PHPStorm ready for Hack and the HHVM debugger: