No, no, that's all wrong... The correct response is "Microsoft ate my baby and then stole my car... with my wife in the passenger seat".
Originally Posted by clavko
Windows is a good product in general, although I disagree with the direction that MS is taking with the UI for desktops in Windows 8. Their interface is nice for touch-enabled devices, but not so nice for the classic keyboard/mouse combination. Performance and stability, however, are fine. I've only managed to crash my Windows 7 desktop a couple times since Windows 7 was released, and some of those times were my own fault.
I use Linux for the freedom and selection that it gives me as a user and as a software developer, not because Windows is an unacceptable choice. If I ever get to the point where all of my games work in either Linux or Wine, I'll probably delete the Windows partition on my main machine, and just keep a VM around for compatibility's sake.
Hi there! I work on HipHop VM at Facebook and own a share of the credit/blame for HHVM's design and implementation.
Originally Posted by etenil
On your question about open-source, back in 2007 and 2008 Facebook contributed several patches back to Zend PHP 5.2 that delivered non-trivial performance improvements (something to the tune of 5-10% CPU reduction for FB's codebase IIRC), while at the same time we also experimenting with other available PHP engines and prototyping HPHPc (the old HipHop PHP->C++ compiler which has since been retired). After a certain point it became hard to get more gains from the Zend engine unless we substantially changed the core of the engine, and by early to mid 2009 HPHPc was getting close to being able to run Facebook's site and was looking promising.
IHMO, we *are* giving back to the PHP community by open-sourcing HipHop VM, making it freely available to use, and having some engineers dedicated full-time to responding to issues reported by developers outside of Facebook. We're dedicated to maintaining a high compatibility bar with the Zend PHP engine; we want HipHop VM to be useful to developers outside of Facebook and we're slowing growing a community around it.
On your LLVM question, we commonly get asked why we didn't use LLVM. In short, LLVM was not suitable for serving as the backend for JIT compiler when we started working on HipHop VM in 2010, and it still is lacking in this respect today. There's also advantages to owning our entire compiler stack as it gives us for flexibility to squeeze out the maximum possible performance for our PHP codebase in the long run. The Google developers who worked on Unladen Swallow (an execution engine for Python) did a nice write-up where they talked about a lot of the issues they ran into when trying to use LLVM as the backend for a JIT compiler: http://qinsb.blogspot.com/2011/03/un...ospective.html .
Thanks for the work on this. With numbers like these, the community will join you.
Since PHP 5.4 released in Mar. 2012, my biggest concern would be in unimplemented features. Any plans to catch-up & stay with on PHP dev lock-step?
Yes, one of our goals this year is to make HipHop VM support the full PHP 5.4 language, to support more extensions than we currently do, and to make it easy for developers outside of FB to port existing extensions or write new extensions.
Originally Posted by snadrus
At present we support most PHP 5.4 language features, including eval, traits, exceptions, late static binding, closures, magic methods (__get, __set, etc.), typehints, autoload, nowdocs, etc. Off the top of my head, the main features missing at present are namespaces and short array syntax, which we plan to add in the coming months. Also, there was some missing functionality with closures, but we've recently fixed that and the fixes should make it to our open-source github repo soon.
Most of the missing functionality that external developers have reported is missing extensions. HipHop currently supports a few dozen of the popular Zend extensions, but there are still several popular Zend extensions that haven't been ported to HipHop yet. While we plan to port a few more extensions this year, we're focusing primarily on making it easier to add/port extensions to HHVM. This includes cleaning up HipHop's extension system to be more friendly, having good documentation, and possibly writing some tools to help port existing Zend extensions.
If you're interested in checking out the source code or looking at the open issues, I encourage you to check out our open source github repository: https://github.com/facebook/hiphop-php . We also blog about HipHop on our Facebook page (https://www.facebook.com/hphp) and on our WordPress blog (http://www.hiphop-php.com/wp/).
Is great to see that the hiphop code has a C++ base instead of plain C, the code looks more elegant and organized than that of original PHP runtime. What would be appreciated is some better documentation on how to use hiphop as a reference for the configuration file.
Originally Posted by paroski
Can it run any unmodified php script?
Pardom my ignorance but does this means it can run any php script with out modification?
Originally Posted by phoronix
technically yes, all core php extensions as some other ones have been ported to hiphop, also it supports all PHP language features with partial support for namespaces (which are currently been worked and improved)
Originally Posted by adrianbro
You may need to change certain things on some scripts but is most case they are minor.
So one more question
So the process would be to install Apache2 (or some other web Server) php5 mysql then hiphop. Or does hiphop replace the web server and php.
Originally Posted by TheOne
hiphop ships with a webserver that is pretty light on resources and seems to be pretty optimized, so no need for apache just a relational database if needed
Originally Posted by adrianbro