>> > Whatever you might be thinking I can't see why not using mono JIT would >> > be desirable. >> >> On some platforms you can't generate _any_ executable code at runtime. >> So there one needs either the interpreter, or full AOT. Some platform >> examples: iPhone, Xbox360, (maybe) PS3. >> >> > > Unless you need reflection or fancy runtime support like transparent > proxies, full AOT is the supported way for such platforms. > And even in that cases, it would be easier and better to extend full AOT > than bringing back the interpreter.
Yes. I was just pointing out why would anyone want an interpreter. Full AOT would work in that case as well. However, having an interpreter would have some advantages in comparison with AOT (as well as some disadvantages of course). Some that come to my head: * Full AOT to another target architecture, anyone? (e.g. you develop on x86 machine, your target machine is ARM or PPC) * With interpreter, there's a shorter cycle on getting your .NET code to some device (think consoles here). With AOT, it goes this way: compiler -> AOT -> native assembler -> native linker -> code signing -> device. With interpreter, it's compiler -> device. One does not even need to have assembler, linker or code signing tools. For what it's worth, we're going Full AOT route in Unity for iPhone. But we were seriously considering the interpreter route as well. -- Aras Pranckevičius work: http://unity3d.com home: http://aras-p.info _______________________________________________ Mono-devel-list mailing list [email protected] http://lists.ximian.com/mailman/listinfo/mono-devel-list
