Everything I have seen and tested tonight (just the basics) it has worked like a charm. Tomorrow I am going to attempt porting an old application that is still running on a production server.
Thanks. Well, there are some bugs. We will release a bug fix in a couple of days. So maybe it will be better for you to wait until then.
One negative thing I did notice though is the lack of the ability to call any .NET function straight from Phalanger. Although I know you do not want to change the php syntax, it should be considered as an option. From my point of view I think it is important
that Phalanger runs unmodified php but it is not important that php runs unmodified Phalanger.
You are absolutely right. We know about this limitation and we plan to enable that. Grammar needn't to be changed to do that. But it's a lot of work so it will take some time.
For now, there is a workaround. You can add your own PHP functions written in C# (a kind of mediators) to class library as you will see if you download source code of the Phalanger Class Library. There is an opportunity to add assemblies of your own to the
class library assembly set provided they follow the same code style as the Class Library. The process of extending class library is not well documented now, however we work in the doc.
Also another treasured feature of .NET is output caching for web pages and especially user controls and I would LOVE to see a similar form caching available for Phalanger.
If the CLR team wants ideas for improvements how about making code unloadable/gc-able so that programs that generate code on the fly don't leak memory. Yes, you can use Appdomains now, but there is unacceptible marshalling overhead with that approach in
programs that have a high number of calls to generated code.
See Lightweight Code Generation in .NET 2.0 (DynamicMethod class particularly). I think that is want you suggest.
Cool stuff, how long do you think it will take the mono guys to get this working with their stack. I heard Miguel and Nat look at Channel 9 quite frequently. Cool stuff though, they looked a little nervous but that happens on camera a lot if you arent
used to it. This could be used to help migrations from Linux or UNIX to Windows as well as several other uses.
We plan to migrate to .NET Framework 2.0 soon which will enable us also to bring Phalanger to Mono. Why? Because we use MC++ for parser implementation (there is no Bison implementation which produces C# code as far as we know - if you know about some which
works perfectly let us know, please). And MC++ compiler is not avaiable on Mono yet. We will rewrite our parser to C++/CLI producing pure IL which will, we hope, enable Phalanger managed binaries to be working on Mono (I think there is also a support for ASP.NET
on Mono). Of course, native extensions shipped with PHP will not work there. Only those extension which we implement (or someone else does - anybody can add his or her functionality to Phalanger clas library).
Haven't had time to watch all the videos yet, but is it possible to debug a php page in VS the same way you would an ASP.NET page?
No it isn't yet. As I have written in the previous post a simple debugging is available nowadays. Debugging of web applications doesn't work now. We know that it would be very useful so we are planing to do it in our new integration package targeting Whidbey
and maybe we will upgrade also VS2003 package.
As one of that guys who you are speaking about here I would like to answer some questions and I'm starting with this one:
Did those guys also make it possible to create PHP files in Visual Studio.net (with statement completion, intellimenus)?
We made a simple integration to VS2003. It includes syntax highlighting, syntax checking, a simple PHP project where files can be stored and which can be compiled (by F5) and debugged (experimental feature that sometimes doesn't work well). IntelliSense and
code completion and other cool features of VS are not supported yet. We are working on integration to Whidbey which is much easier to program because it can be written in C#. Nonetheless, we focus more to the compiler and run-time than to the integration to