Aside from C#, VB.NET, C++ (Managed and C++/CLI), and F#, which .NET programming languages have their own CodeDom provider?
相关问题
- Generic Generics in Managed C++
- How to Debug/Register a Permanent WMI Event Which
- 'System.Threading.ThreadAbortException' in
- Bulk update SQL Server C#
- Should I use static function in c# where many call
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).
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.)
Edit: 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.