Posts Tagged ‘CLR’

Writing Silverlight apps with Dynamic languages like IronRuby and IronPython

February 12, 2009 Leave a comment

Ben Yoder: Iron Python

February 12th 2009 | Ben Yoder

Writing Silverlight Apps with IronRuby and IronPython

As someone who started programming with Java and then moved over to C# and .NET, I have had very few opportunities to program in different languages. This isn’t a bad thing, but there are so many interesting languages out there and few opportunities to apply them.

Fortunately some languages are getting ported over to run on the CLR. This isn’t new: IronPython has been around for a while; as has IronRuby; and the Ada port for .NET (A#) has been available for even longer. There are some new ones on the way as well, such as IronScheme—a Scheme/Lisp port.

But now, with new Open Source Silverlight Dynamic Languages SDK and the Dynamic Language Runtime (DLR) there is an emerging framework for writing Silverlight apps with Dynamic languages such as IronRuby and IronPython.

After visiting the Microsoft Dynamic Language site I was able to get going fairly quickly. Initially I made the mistake of downloading an older version of the Silverlight Dynamic Languages SDK which was compiled with an older version of Silverlight. This caused some issues when trying to run the applications, which I resolved by recompiling the SDK source with references to the current Silverlight dlls.  This is a pain though, and can be avoided by making sure you download the latest version of the SDK which is currently in version 0.4.0. The SDK download page also includes a reference to the version of Silverlight it targets, so double-check the version of Silverlight you are running against the version the SDK uses.

I’m new to these languages, but there is an abundance of information and tools to help you get started. So check out Dynamic Languages SDK 0.4.0, and download Sliverlight if it’s not already installed on your machine.

Those are the only two installs you need to get started.

I used trusty Notepad++ for my text editor and used the included Chiron program to run my apps. This works well, but there are some better options if your looking to integrate with the more familiar environment of Visual Studio. Laurence Moroney at MSDN Blogs explains how to integrate Chiron into a Visual Studio DLR web app. This allows you to code in VS, and start your website using Chiron.

There is also the IronPython Studio which is free and based on the VS 2008 Shell runtime. Even if you don’t have a licensed installation of Visual Studio you can still develop IronPython code in a Visual Studio style environment for free.

While I doubt I’ll be able to integrate any IronPython into our Secret Server Password Management Software anytime soon, it’s great utilizing my Microsoft development tools and knowledge with multiple new languages.

Ben Yoder is a senior .NET developer at Thycotic Software Ltd.