Slashdot Mirror


IronPython-0.6 For .NET/Mono Debuts

Sunspire writes "IronPython, a Python implementation for the .NET and Mono platforms, has just released its latest version, IronPython-0.6. Touted features include speed, with IronPython being supposedly faster than the native C version of Python, and CLR integration giving full access to the .NET and Mono libraries while still being fully dynamic like regular Python. Is Python, Mono and GTK# the new killer combo for rapid Linux desktop application development?" We previously covered IronPython back in May.

2 of 28 comments (clear)

  1. Re:Dear god why? by bdash · · Score: 4, Interesting

    The reason that Python on .NET is of interest is due to past research implying that the CLR is not a suitable environment for dynamic languages. IronPython shows that it this is not the case, and that in many situations the generic CLR may provide faster execution times than language-specific virtual machines.

  2. It's the bindings, stupid by Majix · · Score: 4, Informative
    One real world problem I see IronPython fixing is the availability (or lack thereof) of up to date bindings for the language. Since IronPython targets the CLR you do not need to write your Python specific bindings for GTK, gnome-libs, etc. anymore. Instead, any Mono language can use the Mono targeting GTK#, gconf#, atk# and so on. This doesn't just affect Python, all smaller languages like Ruby or Haskell, heck even Perl and PHP, could benefit from using a shared set of bindings. Even if they already all have their own versions of GTK, when you want to introduce a new library like gnome-vfs everyone has to go and write their own version of it, which is just wasteful.

    Also, Novell throwing their weight behind GTK# gives me confidence that we'll still be receiving updated versions of it a few years from now, which is important when you're trying to sell your PHB on the idea to base your next project on the bindings.

    Here's a quick "Hello world" program in IronPython and GTK#, tested with Mono 1.0. It certainly looks slick. Note the neat way of attaching the function callback to the button's clicked signal, when you're coming from the C version of GTK you really appreciate small things like that:
    import Gtk

    def hello_world (o, args):
    print "Hello world!"

    Gtk.Application.Init()
    window = Gtk.Window ("Hello world!")
    button = Gtk.Button ("Hello!")
    button.Clicked += hello_world
    window.Add (b)
    window.ShowAll ()
    Gtk.Application.Run ()