3 ms·
Thank you. It is like nobody has ever heard of the ngen utility before. You have been able to compile a local copy of a C# application which runs "natively" sin
by UnoriginalGuy 14y ago
Thank you. It is like nobody has ever heard of the ngen utility before. You have been able to compile a local copy of a C# application which runs "natively" since forever.
It does improve performance, but doesn't magically turn it into a ASM/C/C++ executable for the reasons set out above.
- DrJokepu 14y ago> 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)?
- nicwise 14y agoYup, 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_.
- RyanZAG 14y agoNot 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.)
- pkolaczk 14y agoHowever, performance is usually pretty close to what can be achieved using C++.
- pjmlp 14y agoMany people even think that CLR runs the code interpreted!