Two of the top three IDEs for .NET are now supporting dynamic programming languages. While SharpDevelop 3.2 continues to enhance its support both IronPython and IronRuby, Microsoft is entering the game with IronPython Tools for Visual Studio and SapphireSteel is still offering Ruby in Steel.
First a look at the leader, SharpDevelop. The current version is 3.2, which supports the 2.0 runtime and the associated libraries (NET 3.0, 3.5, and 3.5 SP1). For both IronPython and IronRuby there are project templates for class libraries, console applications, and WinForms apps. For WinForms there is a drag-and-drop design surface. Debugging works for IronRuby projects but breakpoints seem to be ignored in IronPython.
SharpDevelop 4, currently under development, will add Silverlight and WPF support.
IronPython 2.7 Alpha 1 brings with is what appears to be an attempt at a production-grade extension for Visual Studio 2010. Python extensions for Visual Studio aren’t new, but in the past there were offered as code samples rather than an actual product. The extension, known as IronPython Tools for Visual Studio, offers code completion and templates for class libraries, console applications, WinForms, WPF, and Silverlight. Only WPF and Silverlight offer a drag-and-drop design surface at this time. Standard debugging support such as break-points work as expected.
While there are no active plans for an IronRuby extension from Microsoft, SapphireSteel is offering one called Ruby in Steel. This commercial product for Visual Studio 2005 and 2008 offers debugging, code completion, a “visual design environment for Ruby on Rails”, and a lot of code generators for Ruby on Rails development.