Automated translations from PHP to Java
Subheadline:
The shortest route from PHP to Java
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)
- Login or register to post comments
- 2236 reads
- Flag as offensive
- Email this Announcement
- Printer-friendly version
(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 - 7: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 - 8: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.