Dynamic Language Runtime

Le Dynamic Language Runtime (DLR) est une surcouche facilitant l'implémentation et l'interopérabilité des langages dynamiques. Le DLR permet de prendre en charge plusieurs langages. Cette technologie est utilisée par Microsoft pour la plateforme .NET et Oracle pour le langage Java.

Le CLR de Microsoft est l'équivalent de la machine virtuelle Java (JVM). Le CLR ne gère que les langages propres à Microsoft tandis que le DLR de Microsoft a été créé pour prendre en charge d'autres langages. Oracle suit la même politique d'ouverture en ajoutant à sa JVM un DLR nommé Da Vinci Machine (en) permettant la gestion d'autres langages que Java. Le terme JVM devient donc inapproprié. Des langages tiers avaient déjà été portés sur la JVM en reprenant la syntaxe de langages existants. La raison principale des DLR est de faciliter le portage de langages tiers ; il est en effet très difficile de faire fonctionner un code dynamique (Python, Ruby) sur un environnement qui est typé lors de la compilation. Le portage d'un langage sur le DLR est donc plus facile que sur le CLR.


Developed by StudentB