【发布时间】:2011-12-22 16:26:52
【问题描述】:
我最近对 ILX 的优点深信不疑(请参阅 this thread)。特别是,我想在 CLR 中定位我自己的函数式语言,这似乎是最好的选择。不幸的是,我似乎找不到从 ILX 回到 CIL 的转换器/汇编器。我觉得我在这里遗漏了一些非常明显的东西,但在 Don Syme 的论文 (found here) 中,他提到了一些我似乎在任何地方都找不到的工具(例如 ilx2cil)!
还有其他人尝试过使用 ILX 定位吗?我在哪里可以获得必要的工具?
【问题讨论】:
-
我认为 ILX 现在是由 .NET 自己实现的。
-
感谢您的回复,但这对于那些想要使用 ILX 的人来说究竟意味着什么?论文中的提议将扩展作为在 CIL(代数类型的统一表示等)上实现函数式语言的统一方式提出。但是,听起来情况不再如此,因为我似乎无法再获得 ilx2cil 的独立二进制文件了。该论文甚至引用了 Scheme/Mercury/Haskell 社区对 .NET 的兴趣。上述社区是否只是自己重新实现了翻译器?
-
我认为您只需发出 ILX,.NET 就会执行它,而无需您执行任何其他操作。 F# 编译器必须这样做...
-
你确定吗? ilasm.exe 引发了论文中所有 ILX 示例的语法错误。
-
可以使用
System.Reflection.Emit来生成和执行ILX吗?
标签: compiler-construction f# functional-programming clr cil