Friday, June 29, 2007

IronPython 2.0 Alpha 2

IronPython 2.0 Alpha 2 has just been released:

IronPython 2.0 Alpha 2 on Codeplex

This release has various changes, but is not (yet) compatible with Silverlight as both products are changing rapidly at the moment.

Hopefully IronPython 1.1.1 will be following shortly...

Hot on the heels of FBConsole 0.6 is... FBConsole 0.7

Just after I discovered FBConsole 0.6 comes, uhm... FBConsole 0.7:

FBConsole 0.7.0 Released

Interestingly that announcement on Firebird news uses exactly the same wording from the post I made a few days ago. Maybe they think I understand Japanese?

Anyway "FBConsole is an IronPython and Windows Forms console for working with the Firebird database".

Silverlight and IronPython Demo

At the recent Mix conference in the US, Jim Hugunin and John Lam did a demonstration of Silverlight and the DLR. This is an hour long video showing off Silverlight, IronPython, IronRuby and explaining how long it fits together:

Mix Sessions Site
Direct Link to the Silverlight and the DLR Video

Thursday, June 28, 2007

Moonlight Desklets

Miguel de Icaza shows off some desklets that are part of the Mono Silverlight implementation (Moonlight), with several mentions of IronPython and how it fits in:

Hack week: Moonlight Desklets

It seems like the Mono folks are using Moonlight to implement some really cool tools...

A Web Based Distributed IronPython IDE

So is this crazy or brilliant? Either way, Mitch Barnett is doing it:

Web Based Distributed Programming IDE for IronPython

CarbonPython - Even More Python on .NET

Antonio Cuni has just announced CarbonPython:

CarbonPython - aka C# Considered Harmful

CarbonPython is an RPython compiler for .NET, which can statically compile a subset of Python (Restricted Python) . The resulting assemblies can be used from IronPython and C#.

You can also read my summary of the project.

FBConsole 0.6

I'm not entirely sure what this is, but it would appear to be an IronPython and Windows Forms console for working with the Firebird database:

FBConsole 0.6

Monday, June 25, 2007

IronPython from Boo

Not got enough Python on .NET? The Boo (a Python inspired language) cookbook shows how to use IronPython from Boo:

Using IronPython from Boo

Saturday, June 23, 2007

A Web Based Interactive Console for IronPython

Software Industrialization continues his exploration of web based IronPython applications with:

A Web Based Interactive Console for IronPython

Thursday, June 21, 2007

Implementing Silverlight in 21 Days

The Mono team have made an enormous amount of progress in implementing their version of Silverlight, Moonlight. Miguel de Icaza talks about what they have done so far, and how they got there in:

Implementing Silverlight in 21 Days

Wednesday, June 20, 2007

SilverKey Demo Day in July, Egypt

Mohammed Tayseer has just announced the SilverKey demo day, to be held in Egypt on July 7th:

SilverKey Demo Day

The developer day will focus on both static and dynamic languages on .NET.

MSSecurity Library

Navtej Singh reports on his almost successful experiments with Mohamed Sharaf's encryption helper library:

MSSecurityLibrary and IronPython

Tuesday, June 19, 2007

Reading CSV Files, Folder Backup, Interop and the SaveFileDialog on the IronPython Cookbook

New additions to the IronPython Cookbook include:

IronPython Standard Library Patch Accepted into Python

Guido has accepted a patch to the Python standard library inspect module as acceptable for inclusion in Python:

Inspect Patch for IronPython (and Jython?) Compatibility

The patch originates from the FePy project and could be in Python 2.6, and even the next bugfix release of 2.5. Note that Guido has only agreed that it can be applied, it hasn't actually happened yet...

It is however, a good (if small) example of IronPython feeding back into CPython. This patch benefits other alternative implementations of Python as well as IronPython

Python vs IronPython Round 2 (TileCache)

Bill Thorp continues his attempts to get TileCache working with IronPython. Now he discovers that the lack of os.access is part of the problem, but that it is available in FePy. Unfortunately FePy doesn't yet support IronPython 2 - so the struggle isn't over yet...

Python vs IronPython Round 2

TechEd Videos

As well as the demos from the IronPython TechEd talks, there are now some videos online:

Dev315 - IronPython and Dynamic Languages on .NET

Web324 - Dynamic Languages on the Web

Monday, June 18, 2007

IronPython and TileCache Woes

Bill Thorp reports on his abortive attempts to get TileCache to work with IronPython:

Python vs IronPython: TileCache

Perhaps the lazy web can help him out...

Pointers for TechEd Demos

Mahesh has posted links to the demos he showed at TechEd:

IronPython TechEd Demos

These include Robotics, ASP, Web services and Powershell demos.

Sunday, June 17, 2007

Benchmarked: F#, C# and IronPython

Robert Pickering does some benchmarking:

F# versus IronPython

Unsurpisingly F# is faster than IronPython.

Something that will also be no surprise, C# is more verbose than both IronPython and F#. What might come as a surprise is that F# is almost as terse as Python.

NAnt Build file for IronPython

Seo reports on switching the FePy makefile to NAnt:

NAnt build file for IronPython

This was inspired by the changes in IronPython 2, but Seo is happy with the switch and NAnt works well with Mono.

Charting, MS SQL and MSO, & the CPython Server

Wish IronPython could talk to CPython? Perhaps the CPython server can help (execute arbitrary Python code on a localhost webserver which returns the response defined in the code):

The CPython Server

Iain has created a comprehensive page on the IronPython Cookbook for:

Managing SQL Server with SMO (Server Management Objects)

Want to generate charts and graphs with IronPython? ZedGraph is a good fit:

Generating Charts with IronPython and ZedGraph

Friday, June 15, 2007

Silverlight with HTML & Windows Flying Dudes on IronPython

Strange flying dues on Windows (and controlled by IronPython) in:

The Agent Server Objects

and a hint about programming html with Silverlight:

Silverlight and the London .NET Group

Web Based Source Code Editor for IronPython

Ok, so an IDE is always my example of an application that you wouldn't want to use in a browser, and therefore proof that web-apps won't take over the world... That aside, Mitch Barnett has started working on a web based code editor for IronPython:

Web Based Source Code Editor

More IronPython & Unicode

Calvin Spealman feels that having 'str' as Unicde departs too far from Python compatibility:

Python, IronPython, Apples, and Oranges

There are some interesting comments!

The debate is picked up and summarised in:

InfoQ: The IronPython, Unicode and Fragmentation Debate

Monday, June 11, 2007

IronPython and Unicode

Because IronPython strings are .NET strings, they are already Unicode strings. This means that string handling can be slightly different than with CPython. Generally things are better (less places where implicit decodes happen), but as always there are pitfalls. This entry notes a couple of the differences:

IronPython and Unicode

BBC Basic for the CLR

My first programming experiences were with BBC Basic, so it is nice to see that it isn't forgotten.

Writing a BBC BASIC compiler for the CLR

The toolset Robert is using includes:

  • IronPython in which to write the compiler
  • PLY - the Python Lex/Yacc-a-like
  • BeebEm - BBC Micro emulator with BBC BASIC II
  • Arculator - Acorn Archimedes emulator with BBC BASIC V
  • Documentation in the form of BBC Micro and Archimedes user manuals, and various other information and examples on the web

pyprof progresses

Seo reports on progress with his profiling for IronPython project:

pyprof progresses

Looks like it is coming along well. Although initially targetting Mono, it's nice to see that he hasn't forgotten us .NET folks!

Saturday, June 09, 2007

New Entries in the IronPython Cookbook

Recent additions to the IronPython Cookbook include:

Nauman Leghari's on IronPython, GLEE, Cecil and More (Graphs)

Nauman Leghari blogged recently on IronPython and Cecil:

"Cecil is a library written by Jb Evain to generate and inspect programs and libraries in the ECMA CIL format. It has full support for generics, and support some debugging symbol format. In simple English, with Cecil, you can load existing managed assemblies, browse all the contained types, modify them on the fly and save back to the disk the modified assembly."

He has followed thes up with:
GLEE is a .NET tool for graph layout and viewing. It has been developed in Microsoft Research.

and then:

As I said in the last post, the output from Microsoft GLEE looked but not ideal and as the method tree gets bigger with more relationships, the diagram gets out of control. Disappointed with that, my further search takes me to the Netron Project, which is a diagramming and graph layout toolkit for Microsoft .NET Framework.

IronPython in Visual Studio Shell

Visual Studio 2008 includes a 'Shell' which allows you to create applications based on Visual Studio. Perhaps useful if you are creating an application which includes a development aspect.

The main page shows IronPython being used in the shell, illustrating IronPython integration with Visual Studio 2008 and (presumably) a use case for the shell:

Visual Studio 2008 Shell

IronPython, IronRuby, JRuby and the Python and Ruby Communities

My commentary on the Ruby community reaction to IronRuby and comparisons with both JRuby and IronPython:

IronPython, IronRuby, JRuby and the Python and Ruby Communities

Of particular note is that the loss of 'multiple engines' from IronPython 1 to IronPython 2 (the jump to the DLR) may be more significant for IronRuby than it is for IronPython.

Friday, June 08, 2007

IronPython at TechEd

News is coming in from TechEd, that despite not getting top billing, IronPython is still the star of the show:

IronPython May Rival C# for XNA Game Development

Actually, it sounds like Mahesh is just doing the demos that Jim showed at PyCon in February (plus some Silverlight fun), and the crowds are still loving it.

Tuesday, June 05, 2007

ToyScript: An Example Language Using the DLR

The Dynamic Language Runtime (the DLR) is a hosting platform and dynamic type system for dynamic languages on .NET. It was abstracted out of the IronPython 1.0 code, and is the platform on which IronPython 2 and IronRuby (plus a couple of other languages) now run.

John Lam has just announce ToyScript, an example implementation of a dynamic language on the DLR.

Number of Types/Methods in mscorlib

Alex Hoffman shares a snippet of IronPython that shows how many Types/Methods there are in mscorlib - the core assembly of .NET.

Python Binding: a SharpDevelop (IDE) Addin

Python Binding is an IronPython 'addin' for SharpDevelop - an Open Source IDE for .NET.

The planned features of PythonBinding 1.0 are:
  • syntax highlighting and coloring
  • form designer support
  • code completion: type a period after a name and it will suggest alternatives, or hit control-space.
  • compile to exe or dll, including a windows exe, or a console application (the console pauses so you can see the output).
  • set compiler options, debug output
  • templates to get you started: windows form, class example
Update from Steve Gilham: the version of Python Binding available for download (0.5 beta) targets version 2.0 of Sharp Develop. The latest version is 2.1, which unfortunately is incompatible with Python Binding.

Monday, June 04, 2007

pyprof: Mono profiler for IronPython

Seo has just announced the start of a mini(ish) project called pyprof:

pyprof: Mono profiler for IronPython

This is a project to get sys.setprofile for IronPython, enabling easier profiling of IronPython code. Initially Seo is targetting the Mono profiling API - but once stable he hopes to investigate the .NET API as well.

Sunday, June 03, 2007

New FePy Blog

Seo Sanghyeon has just started a blog for the FePy project:

There isn't much to see yet, but as usual he has been working on interesting stuff and should have something good to say in the morning...

IronPython now runs faster on Mono

Seo Sanghyeon reports that thanks to optimization work on delegate invocation, IronPython now runs faster on Mono. Conservatively, you can expect 5% speedup for 1.1, and 10% speedup for 2.0a1.

Friday, June 01, 2007

Making POSTs, Launching Subprocess and Wiki Additions

Andrzej Krzywda has done a new blog entry:

How to programmatically submit a POST form using IronPython

Steve Gilham has done a blog entry about launching subprocesses with IronPython:

Spawning a process in IronPython

Both of these examples are in the IronPython Cookbook Wiki, along with several more additions like:
Working with File Paths has been expanded, and the following pages filled in:

Core Concepts