The Phalanger project started at the beginning of the year 2003 as a student project code-named PHP.NET at Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic.

Tomas Matousek, Ladislav Prosek, Vaclav Novak, Pavel Novak, Jan Benda, and Martin Maly have worked on the project under the supervision of Jan Stoklasa (jan dot stoklasa at gmail dot com), who was also an adviser and the idea supporter, and Vojtech Jakl. The aim of the project was to find out whether the compilation of dynamic languages (particularly the PHP language) is possible on .NET Framework and whether it could result to any performance improvements when confronted with the interpreter and various acceleration tools. The school project was defended in September 2004. It proved that,
although primarily designed for statically typed languages, the .NET Framework is capable to host dynamically typed languages and a significant performance improvement can be achieved by their compilation.

After the defense and winning the local ACM Student competition, the PHP.NET project was renamed and became Phalanger. The name "Phalanger" is an abbreviation of words PHP Language Compiler meaning also a charming mammal living in Australian forests and woodlands. The members of the project team continued to contribute to Phalanger on volunteer basis for more then a year, gradually improving the compiler and enriching the set of implemented features. The goal was to provide a functional compiler and runtime compatible with PHP versions 4 and 5 and able to compile and host vast majority of existing PHP applications. The final version 1.0 was released in February 2006 and is available on

In March 2006, Tomas Matousek and Ladislav Prosek started to design and implement the 2nd version of Phalanger. Based on their presentations of Phalanger at the Compiler Lab in Redmond, which is a meeting of CLR compiler writers, they received a generous support from Microsoft Corporation as a part of its initiative to encourage third party compiler writers to target .NET Framework. Phalanger was also presented to academics on
.NET Technologies conference held in Pilsen in May 2006.

The version 2.0 is based on the previous one, however, some parts were completely redesigned and rewritten to enable the PHP language to become a first class member of the .NET Framework family of languages. To support .NET fully, some extensions to the language itself was inevitable. The new
language PHP/CLR includes the original PHP (versions 4, 5, and even some elements of version 6) and adds syntax for generics, metadata attributes, partial classes and other features that make its usage in .NET straightforward and seamless. Various optimizations were also employed so that the new version is even faster than the first one. The Phalanger license also changed, the new one was Microsoft Shared Source Permissive License and Phalanger moved to CodePlex.

Last edited Sep 20, 2006 at 10:11 PM by TomasMatousek, version 11


No comments yet.