Showing posts from October, 2007

Accessing the .NET Field

Haibo Luo continues his series of posts on IronPython with information on accessing .NET class and instance fields with IronPython. IronPython: Accessing the .NET Field

IronPython 2, 'with' and COM

IronPython 2 targets Python 2.5, which means that the with statement is available. This is convenient because the currently released version of IronPython 2 there is a memory leak that keeps COM objects alive after they are used. This bug is fixed in the IronPython source code control, but in the meantime a Japanese blogger has a workaround that uses 'with' and calls Marshal.ReleaseComObject - his fantastically nested example is for Excel Interop. with statement and COM His blog has some other interesting IronPython stuff, including this example of Excel 2007 interop that creates a spreadsheet from a bitmap! Excel 2007 Interop

CPython Extensions for IronPython

Based on Python.NET I've got a proof of concept implementation for using CPython extensions from IronPython: CPython Extensions from IronPython It has limitations, but the example code shows using matplotlib (with numpy and Tkinter) from IronPython 2.

EWeek Article: Microsoft's Growing Support for Dynamic Languages

An EWeek article on dynamic languages. The article is based on the presentation by Jim Hugunin at OOPSLA (Object-Oriented Programming, Systems, Languages and Applications). Microsoft's Growing Support for Dynamic Languages

Dynamic Languages on .NET Video from Mix UK

The video of my talk from Mix UK is now available. See my blog entry for the link and talk description: IronPython et al: Using Dynamic Languages in .NET and Silverlight

IronPython Support in SharpDevelop

The SharpDevelop community (specifically Matt Ward) has just announced IronPython support in SharpDevelop 2.2 : I ronPython 1.1 Integration in SharpDevelop 2.2 It looks pretty nifty, including intellisense and a Windows Forms designer. This is still in alpha and so is not included with SharpDevelop, but is a separate download from the blog entry.

Visual Studio as my IronPython Editor

Haibo Luo continues his series of posts on IronPython with instructions on how to setup Visual Studio 2005 & 2008 (currently in free beta) for use with IronPython, including intellisense, or even CPython!: Visual Studio as my IronPython Editor

C Extensions for IronPython Mailing List

The new Resolver Systems project to allow IronPython to use CPython extensions now has a mailing list: C Extensions for IronPython Mailing List

IronPython is now Open Source

The Microsoft license used for IronPython is now Open Source - or at least approved by the OSI. It is now called the Microsoft Public License: Microsoft Public License OSI Approval Announcement

Memory Savings with Magic Trampolines in Mono

Paolo describes the latest optimisations he has made in the Mono JIT compiler - and how this leads to memory savings for IronPython: Memory Savings with Magic Trampolines in Mono

FePy 7 (IronPython Community Edition) Released

Seo Sanghyeon has just announced the release of FePy 7 . This is the first release of the IronPython Community Edition that includes IronPython 2 (specifically the recently released IronPython 2.0a5). Seo is now working for Mozilla on the IronMonkey project , and this release was in part sponsored by Mozilla. There are two projects that are part of FePy that are not included in this release. Files under trunk/pyprof/, which tries to implement sys.setprofile with Mono profiler API. (Thanks to Miguel de Icaza and Paolo Molaro for help.) Files under bench/, which benchmarks simple IronPython programs to measure progress of Mono runtime. This release is built with Mono The minimum Mono version needed to compile and run for IronPython 1.x is 1.2.3. For IronPython 2.x it's 1.2.5. Mono 1.2.5 and are same except for ASP.NET bugfixes. DLR-based languages won't work with Mono versions before 1.2.5. Changes in this release: IronPython IronPython 2.0 Alpha 5. Lib

IronPython Cookbook Updates

There have been several new entries in the IronPython Cookbook since I last mentioned it. New material includes: A new Silverlight Section Uploading a File by FTP - using the edFTPnet library. Entry by Davy Mitchell . Creating a Pie Chart with Zedgraph - also by Davy Mitchell. Plus various other new entries of course. If you haven't seen the cookbook before, it contains many examples of using .NET libraries from IronPython and also embedding IronPython into .NET applications.

Dynamic Languages Support in Silverlight

An article on Ariel Nelson's blog, about dynamic languages in Silverlight, gives an introduction to using IronPython with Silverlight 1.1: Dynamic Languages Support in Silverlight

IronPython 2.0 Alpha 5

There has been a new release of IronPython: IronPython 2.0 Alpha 5 The main reason that IronPython 2 is still in alpha is that the Dynamic Language Runtime APIs change as it is extended / improved to better support the fledgeling IronRuby. It will need to be out of alpha by the time that Silverlight 1.1 final is released though! This new version of IronPython fixes around 40 bugs / issues reported on Codeplex, plus 20 internally reported bugs. No major new features were added, but the 'array' module was ported from IronPython 1.1 to 2.0 in this release. (The bugs blocking my 'Python interactive interpreter in the browser' were fixed - so this should work with the next release of Silverlight.) The source distribution should work with Visual Studio 2005 and 2008 (currently in free beta). Python 2.5.2 is due for release soon as well... Giles Thomas has also made an announcement on the Resolver blog: Open Source Project to get Some CPython Extensions Working with IronP

IronPython: Overloaded Methods

Haibo Luo's latest blog entry is about using .NET's overloaded methods from IronPython: IronPython: Explicitly Choose One Method

Using C Extensions with IronPython: Resolver Announces Open Source Project

Resolver Systems has announced a new Open Source project, to get some essential CPython extensions working seamlessly with IronPython: Resolver Open Source Project: CPython Extensions from IronPython

IronPython & Resolver at TechEd Barcelona

I'll be demonstrating Resolver at TechEd Barcelona, in a talk with Mahesh Prakriya and Martin Maly. IronPython will feature in several talks there: IronPython and Resolver at TechEd Barcelona

VSX: Iron Cool Stuff

Alan Stevens looks at Visual Studio extensibility and is impressed with the IronPython examples: VSX: Iron Cool Stuff

More IronPython at Microsoft

Visual Basic 10 Ideology Emerging Details of Visual Basic 10 are starting to emerge. This is a new version of Visual Basic that is slated to (at least optionally) replace VBA. Developers having been asking for more dynamic language features, so VB 10 will be built on the DLR. ALT.NET Impressions Scott Guthrie & Scott Hanselman at ALT.NET Scott Guthrie and Scott Hanselman presented at the recent ALT.NET conference. They showed the new MVC version os ASP.NET - including the ability to create Controllers in IronPython and an IronPython view using a WebFormViewEngine. Demos of new technology from Microsoft always seem to involve illustrating the IronPython integration! Want a job working on IronPython? Software Development Test Engineer The Dynamic Language Runtime (DLR) team is expanding and is looking for a highly motivated and passionate engineer to join its test team. The DLR team is focused on delivering the most complete solutions around dynamic languages on .NET with respect

IronPython 2 on Mono

Seo Sanghyeon has updated FePy to include a set of patches so that IronPython 2.0a4 will compile for Mono 1.2.5. IronPython 2.x Patches IronPython 2 is now an official part of the IronPython Community Edition.

Provide (or Not) Argument for By-ref Parameter

Haibo Luo continues delving into IronPython from a .NET point of view by looking at tuple unpacking, function return values and how to work with .NET 'by-reference' parameters from IronPython: Provide (or Not) Argument for By-ref Parameter

Max Recursion Limit in CPython and IronPython

Unlike CPython, a maximum recursion limit isn't set by default in IronPython. An exploration (and explanation): Max Recursion Limit in CPython and IronPython

Microsoft Opens up the .NET Class Libraries Source Code

Microsoft has just announced that it will be making the source code to a lot of the major .NET class libraries available. They will not be under an open source library, but it is still a big step. Scott Guthrie on Releasing the Source Code for the .NET Framework Libraries Miguel de Icaza comments on what this does (and doesn't) mean for Mono. Mono is already distributing some Microsoft code (including IronPython...) that is available under their permissive license (which will soon be renamed the 'open' license - presumably in response to the OSIs request): Microsoft Opens up the .NET Class Libraries Source Code

Python Keyword Arguments & .NET Arguments / Properties

Haibo Luo has done two more blog entries on IronPython, both about arguments and keyword arguments: Keyword Arguments to Set .NET Properties Using keyword arguments in .NET constructors to set properties (a nice feature of IronPython). Passing Arguments for a Call How different Python parameter passing styles map to .NET concepts.