Programming Language Translation
No Access Until
As programming languages become more and more diversified, there is an increasing demand to translate programs written in one high-level language into another. Such translation can help us more effectively reuse the existing code, especially when automating translation is possible. However due to many subtle distinctions between different languages, usually only a subset of translation can be automated. The first half of the paper describes the details of automating most of the translation from C to C++, as well as the difficulties encountered. The second half of the paper talks about the experience of manually porting Java programs to C++, and identifies some of the issues and challenges in automating this translation process. Through the discussions, it is evident that translation is heavily language specific. Comprehensive knowledge about the languages and their subtle distinctions is essential. On the other hand, designing tools to allow high level specification of translation rules and effectively incorporate human interaction is a generic approach to any language translation problem, which is an interesting research problem to explore.