2010-01-15 17 views
10

Kennen Sie die Liste der dynamischen Sprachen, die .NET 4.0 DLR unterstützt?Dynamische Sprachen unterstützt von .NET 4.0 DLR

Ich weiß IronRuby, IronPython werden unterstützt. Nicht sicher, ob IronScheme ist. F #? Was sonst?

Danke!

+5

F # ist keine dynamische Sprache. Es ist eine funktionale Sprache und verwendet das DLR in keiner Weise direkt – JaredPar

+3

Die Sprachen unterstützen/verwenden DLR, nicht umgekehrt. – nos

+0

Ich habe festgestellt, dass alle dynamischen Sprachen, die mithilfe der DLR-Dienste implementiert wurden, auf dem .NET-Framework ausgeführt werden können. – tranmq

Antwort

10

IronPython und IronRuby werden die einzigen offiziell unterstützten dynamischen Sprachen sein.

C# 4.0 wird ein neues Schlüsselwort 'dynamisch' haben, das dynamische Objekte basierend auf dem DLR erstellt. Ironischerweise ist das dynamische Schlüsselwort using eine statische Deklaration. Weitere Informationen zum Keyword 'dynamic' finden Sie unter IronPython URLs.

Ich denke viel Verwirrung über den DLR kommt von der Anzahl der Fehlstarts für andere Sprachen. Aus Gründen, die ich immer noch nicht genau herausfinden kann, entschied sich Microsoft gegen die fortgesetzte Unterstützung von Managed JScript. Es gibt eine interesting discussion on the DLR page on Codeplex wo ein MS Mitarbeiter Staaten

Das DLR JScript wurde experimentell für die Unterrichtung der Gestaltung des DLR (expression Bäume, Interop, callsites, Hosting, etc.). Die JS, die wir mit ASP-Futures und dem Silverlight Dynamic SDK veröffentlichten, wurden sehr alt und unbrauchbar, als sich das DLR für die Veröffentlichung in CLR 4.0 weiterentwickelte. Leider gibt es zur Zeit keine Pläne, ein DLR-hostbares JScript zu entwickeln und zu veröffentlichen.

auch nach Managed JScript wurde als erste Klasse DLR Sprache eingeführt, so irgendwo entlang der Linie dieser Meinung geändert. VBx schien nie so weit zu kommen wie die dynamischen Features. IronLisp wurde IronScheme, was nicht komplett tot ist (sein Release-Kandidat kam im Oktober heraus, aber seit November keine Code-Updates mehr).Nua (Lua für das DLR) war 2008 DOA.

Besonders hervorzuheben ist Phalanger, PHP für .Net. Obwohl derzeit nicht im DLR, according to Wikipedia, gibt es eine laufende Anstrengung, es auf das DLR zu setzen.

+0

Vielen Dank für die Zusammenstellung einer sehr lehrreichen Antwort. Das ist die Art von Antwort, nach der ich suche. Nicht wie hier ist der Link, schau es dir an. Ich kann sicher googlen. – tranmq

+0

IronScheme hatte gerade ein Update! –

1

von wikipedia: dynamic language runtime

Die DLR Dienste werden derzeit in die Entwicklungsversion von IronRuby, eine .NET-Implementierung von Ruby Sprache und für Ironpython verwendet.

Im Jahr 2007 plante Microsoft die Verwendung des DLR für das kommende Visual Basic .NET 10.0 (VBx) und Managed JScript (ECMAScript 3.0). jedoch ab August 2009 Microsoft hat keine Pläne mehr JScript (ECMAScript 3.0) auf das DLR und keine weitere Erwähnung von Visual Basic .NET implementieren Managed im DLR Arbeits zu Visual von Microsoft hergestellt wurde Grundlegende Entwicklungsupdates. Ähnlich wie C#, kann Visual Basic Objekte aus dynamischen Sprachen auf dem DLR wie IronPython und IronRuby [.

Ironscheme, ein kommender Scheme Implementierung [wurde auf dem DLR Build Planung, entschied sich aber zu diese Idee aufzugeben, weil das DLR Zweig das verwendete Projekt aus synchron mit dem Stamm wurde, und auch, weil Das DLR, laut den Entwicklern, konnte die Mehrheit der Scheme Anforderungen nicht unterstützen.

2

Jetfire ist eine .net dynamische Sprache verfügbar unter http://jetfire.codeplex.com. Die Sprachsyntax basiert auf C#.

Das Projekt ermöglicht den Zugriff auf Jetfire-Objekte mit .net C# 4.0 'dyanamic' Objekten (DLR).