mar*_*tin 8 .net f# interpreter intermediate-language
目前我正在为大学做一个关于F#的培训.我有一个关于F#交互式控制台和F#编译器的问题.
F#编译器在编译F#-source时生成Microsoft中间语言(MSIL)代码.然后,在执行编写的程序时,JIT编译器将其转换为机器代码.
但是F#Interpreter Console有什么作用?它是否也按行每行将F#代码转换为MSIL,然后将其转换为机器代码?或者它是否将F#-Code直接转换为机器代码?
如果它首先将它转换为IL,那么我认为可能会有一个IL解释器,因为JIT编译器只编译完整的程序.不是吗?
你怎么看,F#-interpreter如何处理F#代码并进行翻译?
问候,马丁
Jb *_*ain 14
F#编译器使用自己的库AbsIL发出IL .AbsIL是另一个由F#吸收的MSR项目.
当编译为交互模式中,AbsIL使用的System.Reflection.Emit命名空间来发射IL在存储器中,在运行时,这是又由JIT编译为本机代码在执行时该代码.