其中.NET编程语言都有一个codeDOM供应商?都有、编程语言、供应商、NET

2023-09-04 02:15:02 作者:犯罪嫌疑人

除了C#,VB.NET,C ++(管理和C ++ / CLI)和F#,而.NET编程语言都有自己的codeDOM提供商?

Aside from C#, VB.NET, C++ (Managed and C++/CLI), and F#, which .NET programming languages have their own CodeDom provider?

推荐答案

我想过做一个是虚幻脚本,但是我碰到这样的 codeBinaryOperatorType 不包括异或操作。新的EX pression树在.NET 4看起来像一个的多的的哪些功能codeDOM应该提供块级别(如在语句块更好地重复presentation这构成了一个函数体)。

I thought about making one for UnrealScript, but I run into odd issues like the fact that CodeBinaryOperatorType doesn't include an exclusive-or operation. The new expression trees in .NET 4 seem like a much better representation of what features the CodeDom should offer at a block level (as in a block of statements that makes up a function body).

我认为我们需要一个新的codeDOM,它利用系统。codeDOM外的部分,并使用System.Linq.Ex pressions的内部。然后,使结果能够生产任何动态集或源$ C ​​$ C作为输出。 (现在想起来,产生一个编译的程序集实际上是一样的创建一个新的语言来输出源。)

I think we need a new CodeDom that takes the outer portions of System.CodeDom and uses the internals of System.Linq.Expressions. Then make the result able to produce either a dynamic assembly or source code as output. (Now that I think about it, producing a compiled assembly would actually be the same as creating a new "language" to output source to.)

编辑:最重要的是,你还必须考虑实施的 codeModel API,因为很多时候codeDOM是作为一个人正在整合一个新的语言到Visual Studio。

On top of that, you also have to consider implementing the CodeModel API, since very often the CodeDom is implemented as someone is integrating a new language into Visual Studio.