In recent interviews, Xamarin's Miguel de Icaza has confirmed that the company has abandoned its Moonlight effort to bring Microsoft's Silverlight technology to Linux. De Icaza told InfoQ that his expectation that Silverlight would "become the must-have technology" has not come to pass and it had "not gained much adoption on the web". He also blamed "artificial restrictions" added to Silverlight by Microsoft which had made it useless for desktop programming, which in turn thwarted his hopes that it could provide a "write-once-run-anywhere" (WORA) for C# code.

Moonlight came out of the work the Mono project was doing at Novell. Microsoft's plan for Silverlight was to make it a platform for Rich Internet Applications and, at the time, Novell's plan was to make Moonlight an open source version of that platform. However, since then, Novell was bought by Attachmate, De Icaza and his Mono developers had to found their own Mono-oriented company, and HTML5 has become increasingly important for the future of web applications.

Microsoft has been playing down Silverlight over the last year and a half, after previously promoting it as strategically important. In Windows 8, Silverlight is taking a back seat to HTML5 in the browser and for applications. Without Microsoft's weight behind Silverlight, the future for Moonlight has looked less and less promising. Microsoft did release Silverlight 5 at the end of last year and it is generally accepted that this is the last major release of the platform; that means it would be supported, officially at least, until 2021.

De Icaza believes that the best approach now is to split the code into a backend and presentation layer and then reuse the backend code. From de Icaza's point of view, this approach would work with Xamarin's Mono for Android, MonoDroid, and Mono for iOS, MonoTouch, MonoMac, Windows, web or Linux with Gtk. He admits it's not WORA but says that at least it allows applications to "exploit native facilities and create native experiences".

Update – De Icaza pointed out on Twitter that Moonlight was a "Novell project, which we never picked up" despite mentioning it on his blog. He explained that Xamarin had explored picking up Moonlight from Novell but had decided it was dead. That information was, though, only communicated by the omission of Moonlight from any later deal announcements. He later pointed out that the presence of Xamarin's name on the Moonlight page of the Mono project web site was only because they'd copied everything over from Novell and updated the template.

(djwm)