Microsoft has broadened the developer base and programming capabilities for Silverlight by adding dynamic language support to an alpha version of the browser plug-in technology.
The support includes a new runtime for the .Net framework, the Dynamic Language Runtime (DLR), and an implementation of the popular Python programming language, IronPython.
Microsoft also made the source code for these new technologies available through the company's most open source code licence, the Microsoft Permissive Licence. This allows developers and users to view, modify and redistribute source code for either commercial or non-commercial purposes, and also to charge a licence fee for any code they've added to the software.
Both the DLR and IronPython are available on CodePlex, Microsoft's open source project host site. Microsoft has already said last week it would release the source code for some of Silverlight, a cross-platform browser plug-in similar to Adobe's Flash player to deliver multimedia content on the web.
By adding the DLR to the .Net framework implementation in Silverlight, Microsoft is adding cross-platform support for dynamic language programming in .Net, said Keith Smith, a product manager for Microsoft. The move marks the first time Microsoft is offering support for the .Net framework on a platform other than Windows, he said.
However, this support is only available through Silverlight, Smith added. Dynamic languages, such as Python and Visual Basic, execute behaviour at runtime that other programming languages execute when the code is compiled. According to Smith, developers use these languages because they are familiar with them and can use them for rapid prototyping. One drawback to these languages, he said, is that it's difficult to catch errors at development time that would appear when code is compiled.
Microsoft also plans to include an implementation of the popular Ruby development language, which it is calling IronRuby, in Silverlight at an unspecified date. IronRuby also will be available on CodePlex, Smith said.
The inclusion of the .Net framework in Silverlight, also announced this week, means developers can write .Net code for delivery through Silverlight. This will make those applications more stable and also allows Microsoft to tap into the millions of developers that use the .Net environment, said Forest Key, a Microsoft director of product management.
The DLR and IronPython are part of the Silverlight 1.1 alpha release, which is available on the Silverlight website. However, the 1.0 Silverlight beta version released this week does not include them, Smith said.