PHP Classes


Recommend this page to a friend!

      PHP Classes blog  >  Can .NET make PHP run...  >  All threads  >  Agreed  >  (Un) Subscribe thread alerts  
Summary:Agree with the JIT, disagree with Phalanger as a replacement
Author:Tim de Koning
Date:2011-12-15 21:06:18
Update:2011-12-16 03:48:27

  1. Agreed   Reply   Report abuse  
Picture of Tim de Koning Tim de Koning - 2011-12-15 23:29:12
Although you do have some real arguments in favour of Phalanger, i do have some issues with the argument as a whole.

The goal of your post is clear: express your view on the future of PHP and its internals. I wholly agree with you that some sort of a JIT compiler would benefit PHP greatly! I do however disagree that a possible solution to that problem would be a .NET compiler based Phalanger. Just the fact that it's purposely geared toward .NET deployments. An true JIT should be platform independent and should work as low level as possible fully optimizing the underlying capabilities. I am not a true internals developer or anything but any extra layer of translation / abstraction seems like an extra layer of unneeded complexity abstracting away the possible advantages of the underlying hardware.

Also the fact that a non true internally supported engine, phalanger, quercus, hiphop or otherwise is faster and more optimized should be an invitation for the core developers to spur into new improvments and not be passed by like this... I have full faith in the core developers (and actively follow the list) but i have to agree there are stil some people on there do do have a hint of NIH tendencies and `kill` attempts to think outside of the box before hand... On the other hand it's opensource, they're devoting their time to the stuff that makes me have a job :)

With the new RFC system, upcoming move to git (and -hub somewhat) it should at least improve the way ideas like these could find their way into the actual development process by allowing more non-internals developer atleast express their ideas :)

  2. Re: Agreed   Reply   Report abuse  
Picture of Manuel Lemos Manuel Lemos - 2011-12-16 03:48:27 - In reply to message 1 from Tim de Koning
There seems to be a misunderstanding. Phalanger is not platform specific. It just compiles PHP into .NET assemblies, but you do not have to use Microsoft .NET runtime engine to execute those .NET assemblies.

As I mentioned you can use Mono instead, which an Open Source implementation of .NET specification, and it runs on Linux and many other systems. Mono also supports JIT:

As for core developers embrace the concept of JIT, as it was mentioned in the article too, that was tried with PECL LLVM project but it has sort being abandoned for the lack of interest of more core developers to work on that. Maybe they change their minds now that many people are talking about it. The proposal is in an RFC too.