Из пресс-релиз вчера о InfoWorld относительно нового Microsoft Roslyn:
Наиболее очевидным преимуществом такого "деконструированного" компилятора является что он позволяет задействовать весь процесс компиляции-выполнения из в приложениях .Net. Хейлсберг продемонстрировал программу на С#, которая передал несколько фрагментов кода компилятору С# в виде строк; компилятор вернул полученный код сборки IL в качестве объекта, который был тогда (CLR) для выполнения. Вуаля! С Roslyn, С# получает динамическую языковую способность генерировать и ссылаться кода во время выполнения.
Я смог сделать это с момента выпуска .NET 4 с CSharpCodeProvider.CompileAssemblyFromSource
, который я фактически использую в ASP. Чистый проект, написанный некоторое время назад, который делает именно это - позволяет пользователю вводить код в текстовое поле, выбирать сборки/пространства имен для ссылки, а затем выполнять и отображать выходные данные этого кода "на лету" для тестирования кода живой среды в Windows Azure.
Является ли CodeDom
частью/предшественника Roslyn? Какое особое преимущество Рослина над CodeDom
?