Mono delivers Foundation-free open .NET alternative
Parity on C# 3.0 and LINQ
The open-source implementation of Microsoft's .NET is due to hit its second release today, with many .NET 3.5 features and a few notable exceptions.
Mono lets you build and run .NET-style desktop and server applications on Linux, OS X and Solaris in addition to Windows.
Project leader Miguel de Icaza told The Reg it was delays on Mono 2.0 that gave people the opportunity to begin working on C# 3.0 and putting in the completely new LINQ, for language-level integration with SQL to simplify programmatic access to data sources.
de Icaza said early work has at least begun on the Windows Communication Foundation (WCF), and a completed version will be in Mono 3.0, which he penciled in for mid 2010.
Windows Workflow Foundation (WF) and Windows Presentation Foundation (WPF) look less likely to appear in Mono 3.0, at this stage. de Icaza said he's tempted by WF but it would require a lot of work and shifting of priorities. There's no Mono WF work underway.
As for WPF, de Icaza said he's seen very little uptake in developer circles. "It would detract us from more important things like ASP.NET," he said.
de Icaza said Mono's in good shape and was worth the wait. The delay cropped up as the team worked on Windows Forms. It was during this time people began working on the open-source versions of C# 3.0 and LINQ, which means Mono 2.0 is closer to the latest version of Microsoft's .NET Framework - 3.5 - than it would have otherwise been.
"What's nice about LINQ is they integrate SQL into the language - that's what's exciting. A lot of people are now using LINQ on Linux," he said.
The next version of Mono's integrated development environment - 2.0 - will support LINQ and C# 3.0. There's no date yet on the IDE.
Separately, de Icaza said the first version of Moonlight, the open-source implementation of Microsoft's Silverlight media player and browser plug-in, should be out in the next few weeks - before November. Moonlight 1.0, which is currently frozen, will map to Silverlight 1.0, not 2.0 expected later this month.®