Hello IronPython Community,

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

_______________________________________________
users mailing list
users@lists.ironpython.com
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to