Dynamic Language Runtime (DLR) - позволяет создавать свои динамические языки на платформе .NET. Сейчас самыми популярными из них являются IronPython и IronRuby. Также на просторах CodePlex существует IronLisp и другие динамические языки. Последняя версия DLR имеет номер 0.9 и была выпущена 10 декабря 2008 года.

Кроме того, что DLR позволяет создавать динамические языки, она также позволяет добавлять динамические элементы в уже сеществующие языки: C# 4.0 уже использует DLR - смотрите в сторону IDynamicObject.  Если я правильно понял документ DLR Overview, то DLR 1.0 будет частью Common Language Runtime (CLR), выход которой уже не за горами.

Dynamic Language Runtime состоит из трех основных частей: 

  • Common Hosting - оперирует со скриптами (компиляция, парсинг, загрузка), включает в себя всю необходимую функциональность для работы со скриптами динамических языков.
  • Runtime - как видно из названия отвечает за выполнение скриптов, взаимодействие с COM, CLR.
  • Language Implementation - отвечает за механизмы, необходимые для реализации скриптовых языков.

 



Все это очень хорошо подробно описано в документации (DLR Overview и DLR Spec), которую можно скачать со страницы проекта.

Если у вас будет желания (не будет желания читать официальную, англоязычную, документацию), то в следующих постах я рассмотрю более подробнее работу DLR.


Comments are closed