Computer-readable media embodying instructions executable by a computer to perform a method comprising: providing on a Java platform a first class library comprising a first plurality of classes of a first language, the first language being Java language, and a second class library comprising a second plurality of classes of the first language, each of the second plurality of classes of the first language containing one or more of the first plurality of classes of the first language; providing on a.NET platform a third class library comprising a first plurality of classes of a second language, the second language being any.NET language, and a fourth class library comprising a second plurality of classes of the second language, each of the second plurality of classes of the second language containing one or more of the first plurality of classes of the second language; wherein each of the second plurality of classes of the second language presents the same method signature as one of the second plurality of classes of the first language, such that the second class library and the fourth class library present the same interface to applications on their respective platforms; receiving source code of the first language defining a third plurality of classes of the first language, including one or more calls to one or more of the first plurality of classes of the first language and one or more calls to one or more of the second plurality of classes of the first language; and translating the third plurality of classes of the first language into a third plurality of classes of the second language, including translating the calls to the first plurality of classes of the first language into calls to the third class library and leaving untranslated the calls to the second plurality of classes of the first language. providing on a Java platform a first class library comprising a first plurality of classes of a first language, the first language being Java language, and a second class library comprising a second plurality of classes of the first language, each of the second plurality of classes of the first language containing one or more of the first plurality of classes of the first language; providing on a.NET platform a third class library comprising a first plurality of classes of a second language, the second language being any.NET language, and a fourth class library comprising a second plurality of classes of the second language, each of the second plurality of classes of the second language containing one or more of the first plurality of classes of the second language; wherein each of the second plurality of classes of the second language presents the same method signature as one of the second plurality of classes of the first language, such that the second class library and the fourth class library present the same interface to applications on their respective platforms; receiving source code of the first language defining a third plurality of classes of the first language, including one or more calls to one or more of the first plurality of classes of the first language and one or more calls to one or more of the second plurality of classes of the first language; and translating the third plurality of classes of the first language into a third plurality of classes of the second language, including translating the calls to the first plurality of classes of the first language into calls to the third class library and leaving untranslated the calls to the second plurality of classes of the first language.