Why has no one thought of it before….. ? You may ask. But someone now has. The XMLVM project was created by Arno Puder and his team at San Francisco State University. What it does is provide a bridge between disparate compile-time and run-time environments — in a word cross-compiling, as described by Frank Ableson on the Linux Magazine website.
XMLVM serves as an umbrella for several projects. For all projects, a Java class file or a .NET executable is first translated to an XML-document. Based on the XML-document generated by the front-end, various transformations are possible. (extracted)
The possibilities are immense, but I think it will really take off in the mobile market with Applications being able to run cross-platform from Android to iPhone and so on.