The objective of the SICS Java Port Project is to create tools and methodology to translate a large financial software application from IBM VisualAge for Smalltalk to Java. My main motivation for this report is to present some of the major technical issues we have encountered as part of translation, present alternatives and the solution we chose. I would like to share some of the knowledge the project group has accumulated over the last four years.
Each problem will be briefly demonstrated, followed by a short discussion and the solution we ended up with and a demonstration of the results.
In our concrete project, the approach has been highly successful. We have found ways to overcome the most important language differences. The few problems that we have not been able or willing to solve have fortunately been limited to a manageable number of occurrences.
Although it is impossible to directly apply the experiences of this project to other Smalltalk systems, the results should be promising for others with a similar challenge at hand. Hopefully the reader will find the discussions relevant, and if not immediately reusable, at least serve as inspiration for developing custom solutions of their own.