你知道.NET 4.0 DLR支持哪些动态语言的列表吗?
我知道IronRuby和IronPython被支持了。不确定是否支持IronScheme和F#。还有什么呢?
谢谢!
你知道.NET 4.0 DLR支持哪些动态语言的列表吗?
我知道IronRuby和IronPython被支持了。不确定是否支持IronScheme和F#。还有什么呢?
谢谢!
IronPython和IronRuby将是唯一官方支持的动态语言。
C # 4.0将有一个新关键字“dynamic”,基于DLR创建动态对象。具有讽刺意味的是,使用dynamic关键字是静态声明。有关“dynamic”关键字的更多信息,请参见IronPython URLs。
我认为很多关于DLR的混淆来自其他语言的许多错误尝试。出于我仍然无法完全理解的原因,Microsoft选择不继续支持Managed JScript。在Codeplex上的DLR页面上有一个有趣的讨论,其中一位MS员工发表了以下声明:
DLR JScript是用于通知DLR设计(表达式树,Interop,callsites,托管等)的实验性内容。我们发布的JS与asp futures和Silverlight dynamic sdk变得非常陈旧且无法维护,因为DLR持续演进以发布CLR 4.0。不幸的是,在Managed JScript成为第一类DLR语言之后,暂时没有开发和发布DLR-hostable JScript的计划。
即使在Managed JScript被引入作为第一类DLR语言之后,该观点也没有改变。VBx似乎从未在动态特征方面起步。IronLisp变成了IronScheme,虽然它不完全死亡(其RC版本于10月发布,但自11月以来没有更新)。Nua(DLR的Lua)于2008年无法启动。
值得注意的是Phalanger,.Net下的PHP。虽然目前尚未在DLR上,但根据维基百科上的描述,正在进行将其放入DLR的努力。
Jetfire是一种基于C#语法的.net动态语言,可以在http://jetfire.codeplex.com上获得。该项目提供了使用.net C# 4.0 'dynamic'对象(DLR)访问Jetfire对象的功能。