【发布时间】:2011-01-06 05:59:02
【问题描述】:
除了 C#、VB.NET、C++(托管和 C++/CLI)和 F#,哪些 .NET 编程语言有自己的 CodeDom 提供程序?
【问题讨论】:
标签: .net codedom system-codedom-compiler
除了 C#、VB.NET、C++(托管和 C++/CLI)和 F#,哪些 .NET 编程语言有自己的 CodeDom 提供程序?
【问题讨论】:
标签: .net codedom system-codedom-compiler
我曾考虑为 UnrealScript 制作一个,但遇到了一些奇怪的问题,例如 CodeBinaryOperatorType 不包含异或运算。 .NET 4 中的新表达式树似乎非常更好地表示了 CodeDom 应该在块级别提供哪些功能(如在组成函数体的语句块中)。
我认为我们需要一个新的 CodeDom,它采用 System.CodeDom 的外部部分并使用 System.Linq.Expressions 的内部部分。然后使结果能够生成动态程序集或源代码作为输出。 (现在我想起来了,生成一个已编译的程序集实际上与创建一种新的“语言”来输出源代码是一样的。)
编辑:除此之外,您还必须考虑实现 CodeModel API,因为 CodeDom 通常是在有人将新语言集成到 Visual Studio 时实现的。
【讨论】: