Какие языки программирования.NET имеют поставщика CodeDom?

Помимо C#, VB.NET, C++ (Managed и C++/CLI) и F#, какие языки программирования.NET имеют своего собственного поставщика CodeDom?

1 ответ

Я думал о том, чтобы сделать его для UnrealScript, но у меня возникли странные проблемы, такие как тот факт, что CodeBinaryOperatorType не содержит операции исключающего или. Новые деревья выражений в.NET 4 кажутся намного лучшим представлением функций, которые CodeDom должен предлагать на уровне блоков (как в блоке операторов, составляющих тело функции).

Я думаю, что нам нужен новый CodeDom, который принимает внешние части System.CodeDom и использует внутренние компоненты System.Linq.Expressions. Затем сделайте результат способным производить либо динамическую сборку, либо исходный код в качестве вывода. (Теперь, когда я думаю об этом, создание скомпилированной сборки будет фактически равносильно созданию нового "языка" для вывода исходного кода.)

Изменить: Кроме того, вы также должны рассмотреть возможность реализации API CodeModel, поскольку очень часто CodeDom реализуется, когда кто-то интегрирует новый язык в Visual Studio.

Другие вопросы по тегам