[Mono-dev] Porting mcs to IKVM.Reflection

Jeroen Frijters jeroen at sumatra.nl
Thu May 6 10:00:32 EDT 2010


> My understanding is that basically we only have two compilers:
> - static:  mcs.exe, gmcs.exe, smcs.exe, dmcs.exe (for each profile)
> - dynamic: Mono.CSharp.dll, that is used by Microsoft.CSharp.dll and
>             csharp.exe
> 
> As I see (based on your explanation) only the dynamic (as in the above
> list) compiler is using MakeExpression methods that will have to use
> System.Reflection anyway because they generate code that can be executed
> without saving an assembly first that requires runtime support. Because
> of conditional compilation and minimal code changes, having support for
> both SRE implementations - in my opinion - is not (significantly)
> increasing code maintenance requirements.

This is exactly the scenario that IVKM.Reflection was designed for, because I'm in the same boat. ikvm.exe is a dynamic runtime, whereas ikvmc.exe is a static compiler.

Regards,
Jeroen


More information about the Mono-devel-list mailing list