Mono includes: (1) the ISO standard parts, including C# and CLI, and also (2) the Microsoft proprietary parts, including Windows.Forms and ASP.NET and ADO.NET.
http://www.mono-project.com/WinForms http://www.mono-project.com/ASP.NET http://www.mono-project.com/ADO.NET
Mono is written by Novell. Novell has a patent deal with Microsoft, so that Novell has a license from Microsoft to write these non-free parts of Mono, and to include them in SLED.
They are indeed open source, but they are not licensed by Microsoft to run anywhere but in SLED. Not in OpenSuSe, not in Ubuntu, not in Fedora, not in Debian, not in Slackware, not in Gentoo, not anywhere but SLED.
When you install Mono 2 on any Linux system, you are installing software which includes Microso[f]t proprietary technologies without having a license from Microsoft to do so (unless you run SLED).
What is worse, if you use Mono to port to Linux programs originally written in .NET for Windows, then any such ported programs on your Linux system will include and rely upon the unlicensed Mono libraries on your system.
What exactly is Mono all about? I think this page sums it up nicely:
http://www.mono-project.com/Guide:_Porting_Winforms_Applications
Mono is all about getting existing Windows applications, and their Microsoft-proprietary dependencies, installed on to your Linux system, so that you will in the near future require a paid-for license from Microsoft to run programs on your Linux system.
Note: the argument built in this post is structured using references only from the Mono project itself. It does not rely on any potentially biased words from sources such as the Boycott Novell website … only the Mono project’s own words are quoted.
--Larry Goldfarb, investor in SCO
Comments
Jose_X
2008-11-19 06:32:58
From http://www.groklaw.net/articlebasic.php?story=20071023002351958 ,
>> Turning a product into a platform perpetuates and broadens the success of the product. This is because writing code to support even one platform is hard; writing code to support multiple, alternative platforms is exponentially more difficult. This leads developers to choose between alternative platforms, and (ideally) choose one over all others. This choice, once made, is not easily changed; code written to one platform is only re-written to another with difficulty. In effect, once a developer chooses a platform, the developer is "locked in" to that platform.
Mono is FOSS; however... If we remove the patent threats, it's not exactly evil or anything, but its spread (used to create more and more apps) would tilt various advantages in Microsoft's direction and definitely hurt support for Linux "organic" investments and hurt FOSS supportive commercial players.
IBM and Sun, for example, have very large investments (think brain cells/dev addiction, code base, business contracts, etc) in Java. PHP and others platform supporters would also hurt. Linux itself would lose momentum. Etc.
See also http://boycottnovell.com/2008/10/11/mono-2-beyond-the-hype/#comment-27135