On 07 Oct 2009, at 08:50, Gilles MARCOU wrote:

But, I have read on the web site posted by Jonas, that the GCC sees the CIL as a target platform of the compiler. If the GCC can do it, isn't it
possible to do it also for FPC?

Of course. It's simply that someone has to do it (just like for LLVM).

Also, does producing CIL compliant
binaries could help the development of client side applet for web
applications?

Unlikely, because the sort of CIL that FPC would generate would be of the "unmanaged kind". Running that sort of code would be just as unsafe as running a random executable. Furthermore, such code would still be completely platform-dependent: FPC (and GCC) would just use CIL as an assembler format, but all types, system functions etc would be specific to the OS/architecture for which you compiled.

What you would need for web applets is that additionally someone would add a .NET-based rtl to FPC -- but in that case, your users would also have to have the .NET runtime installed, and it would become impossible to compile the CIL further into native code without adding external dependencies (since the RTL would depend on the .NET framework).

Generating CIL as intermediate code is by itself only useful if you are interested in a) using some other code generator that FPC's to generate the actual machine code (but note that FPC will still require support for the target cpu and OS that you want to compile for, because as mentioned above the generated CIL will already be completely target-dependent) b) (possibly) to more easily interoperate with other compilers that can compile code into CIL


Jonas
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to