Aller au contenu

Dynamic Language Runtime

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 29 novembre 2008 à 16:28 et modifiée en dernier par 90.47.144.23 (discuter). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

La DLR est une surcouche facilitant l'implémentation et l'interopérabilité des langages dynamiques. La DLR permet de supporter plusieurs langages. Cette technologie est utilisé par Microsoft pour la plateforme .NET et Sun pour sont langage java. La CLR de Microsoft est l'équivalent de la machine virtuelle java (JVM ). La CLR ne supporte que les langage propre à Microsoft tandis que la DLR de microsoft à été créer pour supporter d'autre langage supporte.Sun suit la même politique d'ouverture en ajoutant à sa JVM une DLR de nom Da Vinci Machine permettant le support d'autre kangage que java. Le terme JVM devient donc inapproprié. Des langages tiers avaient déja été porté sur le JVM en reprenant la syntaxe de langage existant.

DLR Microsoft

La DLR est une surcouche du Framework .NET facilitant l'implémentation et l'interopérabilité des langages dynamiques. La DLR permet le support de langages non Microsoft comme Python et Ruby alors que la CLR (sur laquelle est implémentée la DLR) utilise C# et VB.NET. Les versions de Python et Ruby fonctionnant sur la DLR sont appelées IronPython et IronRuby. IronPython et IronRuby sont sous licence Microsoft Ms-PL. D'autres implémentations sont supportés comme JScript .NET et VBScript .NET.

L'intérêt de la DLR se trouve dans l'utilisation de langages dynamiques comme le langage PHP et dans le fait que certains langages ont une syntaxe beaucoup plus simple et structurée comme Python.

Les premières applications fonctionnant avec les langages de la DLR sont :

  • Microsoft Silverlight 1.1, provenant de wpf, ne fonctionne que dans un navigateur (Mac/Intel et Windows) et supporte la DLR, Ironpython et managed JScript
  • Mono est la machine virtuelle implémentant la CLR sous linux et pas seulement le navigateur
  • Manifold System supporte tous les langages compatibles .NET (IronPython, VBScript .NET, …) à l’exception d’IronRuby.

L'infrastructure de la DLR offerte par Microsoft à mis fin au portage natif de Ruby .Net [1]

Quelques langages ont été portés sur la DLR de microsoft :

DLR de Sun

Quelques langages ont été porté sur la JVM de Sun

Les langages supportés par la DLR de Sun sont

  • Groovy est l'implémentation d'un langage de script reprenant la syntaxe java et les idées de python et ruby
  • JavaFX est la mise en œuvre d'un langage de script permettant de concurrencer silverlight et Adobe Flex

Da Vinci est la réponse de Sun à Microsoft : elle permet à la machine virtuelle java de prendre en charge les langages dynamiques.

Articles connexes