ESP Wiki is looking for moderators and active contributors!

.NET, C-sharp, and Mono

Revision as of 16:01, 11 September 2010 by Ciaran (talk | contribs) (Mono: Mono (version 1.1.10) is one of the software packages that OIN members promise not to use their patents against.<ref>http://www.openinventionnetwork.com/pat_linuxdefpop.html</ref> Vers)

.Net is a development platform, for which the main programming language is C#, both of which were developed by Microsoft.

Mono is a software implementation of .Net and C#, developed by Novell with assistance from Microsoft.

Mono

What is it?

Mono is an implementation of the C# programming language and the Common Language Infrastucture as described by ECMA-334 / ISO/IEC 23270 and ECMA-335 / ISO/IEC 23271.

What reassurances has Microsoft offered?

The ECMA-334 and ECMA-335 are covered by the Microsoft Open Specification Promise and the Microsoft Community Promise, which says:[1]

Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation, to the extent it conforms to one of the Covered Specifications, and is compliant with all of the required parts of the mandatory provisions of that specification ("Covered Implementation"), subject to the following: [...]

OIN protection

Mono (version 1.1.10) is one of the software packages that OIN members promise not to use their patents against.[2] Version 1.1.10 is from 2005.

Avoiding Mono

Avoiding C#: use Vala

There is a langauge called "Vala" which aims to have the utility of C#, and which was developed without Microsoft's involvement."Vala Tutorial". http://live.gnome.org/Vala/Tutorial. "Vala's syntax is an amalgam heavily based on C#'s." </ref>

However, since Vala is a "partial" implementation of C#/.NET, it is not covered by Microsoft's patent promises. Microsoft's patent promise only applies to "any implementation [that] is compliant with all of the required parts of the mandatory provisions of that specification". Some people suggest this makes Vala riskier than Mono.[3]

Vala, and applications written in Vala such as Shotwell, have been added to the Fedora GNU/Linux distribution.[4] Fedora rejects some package that carry a patent risk, so their acceptance of Vala indicates some confidence in it.

Related pages on ESP Wiki

External links

About Mono

References

  1. http://www.microsoft.com/interop/cp/default.mspx
  2. http://www.openinventionnetwork.com/pat_linuxdefpop.html
  3. "Language Envy". http://linuxpatents.blogspot.com/2010/05/language-envy.html. "[Note: this article compares Vala features to the abstract of some Micrsoft patents, but this doesn't imply infringement. It's the claims that should be looked at.] A quick look through the patent system reveals Vala is infringing happily left and right on Microsoft property. [...]" 
  4. http://mether.wordpress.com/2010/04/13/fedora-13-desktop-features/