Monday, September 14, 2009

More from Mono: Moonlight 2, Monodevelop 2.2 and Debian Packages

Several of the recent entries here have been about Silverlight and IDEs. We continue the theme in this entry, but looking at things from the Mono side of the fence.
Silverlight is a cross-platform, cross browser plugin by Microsoft that allows you to execute Python code in the browser with IronPython. It is a Rich Internet Application framework with a user interface model based on WPF (Windows Presentation Foundation) and full access to the browser DOM.

Unfortunately cross-platform only means Windows and Mac OS X, leaving Linux users out in the cold. Fortunately the Mono team have stepped up to the plate. Their implementation is called Moonlight, and Moonlight 2.0 (the version that can run Python code) has recently reached beta. It is a Firefox plugin that runs on Linux and is capable of running most of my IronPython Silverlight examples.
Moonlight isn't the only interesting beta to have come out of the Mono household in recent days; MonoDevelop has also reached an exciting new milestone with the release of 2.2 Beta 1.

MonoDevelop is the Mono IDE, originally created as a fork of an early version of SharpDevelop (a Windows only open-source .NET IDE).

The important new feature of MonoDevelop 2.2 is full cross-platform support, including Mac OS X and Windows.

Mono 2.2 also adds official support for Python development:
The Python Binding has been greatly improved, and we are releasing it as an official MonoDevelop add-in for the first time. Here is a summary of the features supported by the add-in:
  • Robust and fast code completion support
  • Quick class/method finder at the top of the file
  • On-the-fly syntax checker, with support for Pyflakes.
  • Support for Python 2.5 and 2.6
  • Code folding for Python blocks
This is not the same as IronPython support, something that is still on the MonoDevelop wishlist. The Python support is for CPython, but the good news is that IronPython support would be able to share a lot of features from the Python bindings - all we need is someone to step up and provide an IronPython binding...
If you're interested in trying out IronPython with Mono then these preview packages may be of interest... The recent versions of DLR languages need very recent versions of Mono. apt-get install ironpython works, but currently installs a very old version of IronPython (1.0 I think). These packages will enable the most recent versions to run.

The Mono packages are maintained at: Mono for Debian.

No comments:

Post a Comment

Note: only a member of this blog may post a comment.