Automated translations from PHP to Java
Numiton offers an automated alternative to migrating PHP codebase. This way, established applications can benefit from the advantages offered by Java in its enterprise-level capacity.
Some of the risks inherent to any software migration are avoided by using an automated translation tool. Our PHPtoJava product performs variable type inference, objectualization and other operations in a uniform manner, the resulting appearance and behavior being identical to what the users already know.
Of course, the human factor still plays an important role in the post-translation phases: application fine-tuning and functional testing. The speed and accuracy of the entire process surpass however those of a manual translation.
One of the applications we have migrated this way is the well-known forum engine phpBB. The translation result, nBB2, powers our own forum and was recently donated to the open-source community as a SourceForge project.
Published at DZone with permission of Robert Enyedi, author and DZone MVB.Some of the risks inherent to any software migration are avoided by using an automated translation tool. Our PHPtoJava product performs variable type inference, objectualization and other operations in a uniform manner, the resulting appearance and behavior being identical to what the users already know.
Of course, the human factor still plays an important role in the post-translation phases: application fine-tuning and functional testing. The speed and accuracy of the entire process surpass however those of a manual translation.
One of the applications we have migrated this way is the well-known forum engine phpBB. The translation result, nBB2, powers our own forum and was recently donated to the open-source community as a SourceForge project.
(1 vote)
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)






Comments
Ray Cromwell replied on Wed, 2008/03/05 - 6:53am
Caucho's Quercus (in Resin PRO) already provides compilation of PHP to Java, and I notice that you're actually using Quercus for some stuff, so how does your product differ from Resin Pro, can you show advantages or performance differences?
Robert Enyedi replied on Wed, 2008/03/05 - 7:26am
What PHPtoJava does is translating all PHP code to Java source code. From here on it can be maintained and developed as a regular Java application. A few more ideas about this are listed at http://www.numiton.com/html/faq.html#faq3
Inside nBB2, Quercus is an optional component used for a few runtime calls. This is mostly for tricky PHP functions like regexp ones. We have noticed that Java shared hosting restrictions prevent our own runtime from functioning properly - and we assume that nBB2 might be deployed on such a budget-friendly environment. This is work in progress though, only on a CVS branch and without any releases yet.