Mono Comes To Android
hairyfeet writes "After releasing Monotouch for iPhone which allows c# development on iOS, Novell has announced the availability of Mono for Android. Will this give us the 'one language to rule them all' that Java failed to bring, or will the bad blood between the F/OSS groups and Microsoft make this a dead end?"
Wrong.
MonoTouch ( which is the IOS .NET development suite ) uses the Mono Full AOT feature and precompiles all the code into a static binary ( including the base class libraries ) and links in runtime stubs for GC and the likes.
Certain features of .NET are naturally not available ( runtime code generation, features relying thereupon ) and some c# features don't work ( virtual methods in generic classes for example )
So you end up with a fully statically linked executable with no JIT included, fully compliant with IOS licensing terms.
Unity3D uses the same approach ( and probably shares a bit of the codebase )
This just in: "Mono for Android includes the core Mono runtime, bindings for native Android APIs, a Visual Studio 2010 plug-in for developing and testing Android applications, and a software development kit (SDK). The enterprise edition costs $999 (£613) per developer per year, including maintenance and updates. A five-developer enterprise licence costs $3,999 per year, and a professional edition costs £399 per developer per year."
http://www.zdnet.co.uk/blogs/communication-breakdown-10000030/novell-releases-mono-for-android-toolset-10022167/?tag=mncol;txt
-=Maggie Leber=-
Everything I've seen other than Java is, at best, half-baked on Android. Scala is the closest I've seen to full-featured.
The C# language is/was ECMA-standardized. The libraries (eg. the "API") most certainly is not. Even disgregarding the legal aspects, the fact of the matter is that the only complete implementation of the .NET stack is Microsoft's. Mono is missing many major components, as detailed in their page:
http://www.mono-project.com/Compatibility