Re:Microsoft asking for engineer to work on a native compile...
by DrJokepu on Wednesday November 28, 2012 @08:06AM
(#4842289)
> It does improve performance, but doesn't magically turn it into a ASM/C/C++ executable for the reasons set out above.
Isn't that, however, exactly what the Mono folks are doing with MonoTouch to get apps written in C# run on iOS (and approved in the App Store)?
Re:Microsoft asking for engineer to work on a native compile...
by RyanZAG on Wednesday November 28, 2012 @08:32AM
(#4842399)
Not really - they're just swapping out the libraries for ones that they can use on iOS. It's not going to be portable off of iOS, etc. (EDIT: That is, the iOS specific UI code - obviously non-platform specific library based code will be completely portable)
Plus it won't be as fast as writing it in C/obj C as it will have garbage collection overhead, type checking, bounds checking, etc etc. (For iOS style UI apps this isn't a concern as they're mostly just thick clients to real calculations done elsewhere, so speed barely matters as you are just relying on the speed of UIKit for graphics anyway.)
Re:Microsoft asking for engineer to work on a native compile...
by nicwise on Wednesday November 28, 2012 @08:29AM
(#4842380)
Yup, thats exactly what Monotouch does. It's something like:
C# -> IL -> Mono AOT* -> ARM binary -> xcode/LLVM -> normal iOS binary
* AOT = ahead of time compiler - like JIT, but... before it's needed. There is a linker step in there to remove a load of stuff too.
Works _great_.
It does improve performance, but doesn't magically turn it into a ASM/C/C++ executable for the reasons set out above.