Miguel de lcaza has written on his blog about Microsoft’s announcement to include C# and CLI under their community promise.
The promise itself aside, Miguel has announced something very interesting, Novell will be separating the Mono C# and CLI parts which are covered under the promise from the rest of their .NET implementation which is not.
Astute readers will point out that Mono contains much more than the ECMA standards, and they will be correct.
In the next few months we will be working towards splitting the jumbo Mono source code that includes ECMA + A lot more into two separate source code distributions. One will be ECMA, the other will contain our implementation of ASP.NET, ADO.NET, Winforms and others.
So there you have it. Mono itself does indeed implement more technology than just C# and CLI (we all knew that) and those extras are not covered under this “promise” from Microsoft (obviously). They still pose a significant risk to free software (and so still might C# and CLI, but that for another day).
The good thing about this is that distros (if they aren’t already) can more easily leave out all the extra .NET stuff from their Mono implementations, which is good news.
If you are going to write .NET applications, I think it would be smart to stick to C# and GTK.
This promise from Microsoft vindicates the anti-Mono crowd’s point of view as it shows that there is/was an issue around patents, even for CLI and C#. For this promise, pro-Mono people should be thanking the other side.
Of course, when it comes to the promise itself, I’d like to see the word “irrevocable” put in there somewhere. No doubt over the next few weeks we’ll see people far more intelligent than I doing some analysis on the promise and what it really means for free software.