IronPython 2.0 Alpha 2 Released

IronPython 2.0 Alpha2 版本已发布,此版本移除了 Microsoft.Scripting.Vestigial,并将 DLR 和 IronPython 的实现分离到不同的 DLL 中。此次更新还改进了 DLR 的 AST 和动态站点支持,并引入了正确的 IDynamicObject 接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

From maillist of IronPython

We have just released IronPython 2.0 Alpha 2. This release is a snapshot of the on-going progress with IronPython 2.0 and the DLR.


One of the most significant changes in this release is the removal of Microsoft.Scripting.Vestigial. Previously this DLL was a combination of both IronPython support code as well as portions of the DLR. With Alpha 2 Microsoft.Scripting.dll contains all portions of the DLR and IronPython.dll contains the IronPython implementation which builds upon the DLR. This should help consumers of the DLR to better understand the public surface area. Being early in the product cycle this surface area may still change significantly but there are now bright lines between what DLR code is and what IronPython code is.

IronPython also continues to use the underlying concepts of the DLR more and more. In the Alpha 1 release there were numerous locations where IronPython would use DynamicSites but fallback to runtime lookups because the site couldn't perform optimally. In this release we've continued to flush out these corner cases and improve IronPython's support for generating proper rules when using DynamicSites. We've also improved the shared infrastructure the DLR provides for creating rules and moved IronPython to this shared infrastructure.

Significant changes in the DLR include the removal of Microsoft.Scripting.Vestigial, continued refinement of the AST and dynamic site support, and replacement of the old IDynamicObject with the new IDynamicObject. IronPython has also been updated to use more of the DLR concepts.


The DLR also continues to be expanded and improved. The DLR AST has been improved with support for more static constructs such as simple exception handling constructors and better variable support. The DLR AST factory methods have also been moved to a static Ast class to enable easier construction of ASTs. There have also been some additional convenience methods added to various nodes to make construction even easier still. Finally the DLR also has been improved to support an arbitrary number of arguments inside a DynamicSite which helps to enable calling all functions in an optimized manner.

One of the most significant (although fairly small) improvements is the introduction of the IDynamicObject interface under its proper name. In the Alpha 1 release this interface was temporarily named IActionable because IronPython had previously shipped with an IDynamicObject interface. In this new release the old interface has been completely removed and the DLR now provides the correct IDynamicObject interface. This interface lives at the heart of the DLR so it's noteworthy that it's now found its final home.

Note: Due to dependencies upon APIs that are not present in Silverlight 1.1 Alpha (released at MIX) you won't be able to re-build this release for use with Silverlight. As both products stabilize more we expect better compatibility between releases. 

You can download IronPython v2.0 at: http://www.codeplex.com/IronPython/Release/ProjectReleases.aspx?ReleaseId=5246

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值