Compilers & related

The most of actual core developers of Phalanger project are in our company. All of them have strong academic background in automata theory, compilers, optimization and dynamic languages. Our specialization is domain of dynamic languages that can be interpreted, compiled or combination of both. Compilation of dynamic language is hard job, because behavior is known just at time of the execution, not during the compilation in contrast to the static languages. Hence, it needs robust and efficient runtime.

Implementing dynamic language compiler involves a lot from computer science and it needs continuous research. Basically we are involved in these areas:

  • Microsoft Intermediate Language (MSIL) (.NET instructions)
  • Code optimization
  • Debuggers
  • Intelligent tests
  • Syntactic and semantic analysis
  • Integrated Development Environments (IDE)
  • Interoperability methos between static and dynamic languages

Publications

  • Adam Abonyi, Daniel Balaš, Miloslav Beňo, Jakub Míšek, Filip Zavoral:
    Phalanger Improvements, Technical report 2009/5, Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague, 2009
  • Jan Benda, Tomas Matousek, Ladislav Prosek:
    Phalanger: Compiling and Running PHP Applications on the Microsoft .NET Platform.NET Technologies 2006

Share this page

RSS php-compiler.net

  • WordPress on .NET with SQL Server is Possimpible using Phalanger 3.0 January 23, 2012
    In a recent scenario I wanted to run WordPress as a subdirectory of a .NET application. I also wanted to avoid installing PHP and MySql on the Windows server. Impossible? Apparently not! (I’ll get to the word Possimpible a bit … Continue reading → […]
  • Phalanger riding Mono January 17, 2012
    Phalanger is a complete reimplementation of PHP, written in the C# language. It was always being developed with the Mono platform in mind. This means you can compile and run PHP application on Linux web servers using Mono. Since Phalanger 3.0, … Continue reading → […]