One of the common claims of the Mono proponent is that distribution packagers are splitting Mono into ECMA and non-ECMA packages. Debian and/or Ubuntu are commonly held up as examples in this area.
http://www.the-source.com/2010/12/on-mono-packaging/
Mr. Shields was kind enough to respond, and here’s the summarized deal:
1. ECMA/non-ECMA is not a consideration in packaging Mono.
2. No distribution ships Mono with ECMA-only components.
3. It is not possible to do so without “deep surgery”.
4. Splitting along ECMA/non-ECMA lines is not a priority.
So, we can reject the claim that distribution packagers are splitting Mono into ECMA/non-ECMA components.
1. ECMA/non-ECMA is not a consideration in packaging Mono.
2. No distribution ships Mono with ECMA-only components.
3. It is not possible to do so without “deep surgery”.
4. Splitting along ECMA/non-ECMA lines is not a priority.
So, we can reject the claim that distribution packagers are splitting Mono into ECMA/non-ECMA components.
The current claims is that "These technologies are today not fully implemented in Mono and not required for developing Mono-applications, they are simply there for developers and users who need full compatibility with the Windows system.". This assertion is patently wrong because "not fully" isn't defined. If they are included but not functional/useful then they are bloat. But, "full compatibility" implied full functionality. It can't be both ways.
But, it is even worse. The lead link points out something that most people were not aware of. When asked in 2004 about patented technology in Mono de Icaza replied:
The discussion quickly got steered into the patent problem. Miguel is very aware of the patent situation in US today and the dangers this [will] mean for Free and Open Source Software (F/OSS).
....
Regarding Mono and the Microsoft .NET patents, Ximian is now splitting the "non-free" parts of .NET in Mono, and so OS providers can decide if they want to include in their products the "non-free non-ECMA" portions or not. Apparently, even without the non-free portions, Mono is fully usable, complete with the GTK# bindings, database and other free parts.
...
Miguel explains: "If there is indeed a new technology that Microsoft holds a patent to and they do not explicitly allow us to use, we will remove that code, or rework the code in a way that does not infringe the patent. We do not like the current patent environment in the US, but we have to play by the rules."
....
Regarding Mono and the Microsoft .NET patents, Ximian is now splitting the "non-free" parts of .NET in Mono, and so OS providers can decide if they want to include in their products the "non-free non-ECMA" portions or not. Apparently, even without the non-free portions, Mono is fully usable, complete with the GTK# bindings, database and other free parts.
...
Miguel explains: "If there is indeed a new technology that Microsoft holds a patent to and they do not explicitly allow us to use, we will remove that code, or rework the code in a way that does not infringe the patent. We do not like the current patent environment in the US, but we have to play by the rules."
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.
Depending on how you get Mono today, you might already have the this split in house or not.
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.
Depending on how you get Mono today, you might already have the this split in house or not.
As far as I can tell, most people consider some technologies more dubious than others - System.Windows.Forms or System.Data is hairy, whereas a non-spec method on the String class doesn't make everybody leap in fear.
.....
So it's true that we have distinct packages for the "scary" bits like System.Data versus "less scary" stuff like mscorlib.dll, but it is absolutely true to say that no distribution ships a Mono framework with ECMA-only components, and it's not possible to do so without deep surgery on the class library, requiring a lot of man hours. Which is time Miguel would rather get his guys to invest in MonoDroid or MonoTouch.
.....
So it's true that we have distinct packages for the "scary" bits like System.Data versus "less scary" stuff like mscorlib.dll, but it is absolutely true to say that no distribution ships a Mono framework with ECMA-only components, and it's not possible to do so without deep surgery on the class library, requiring a lot of man hours. Which is time Miguel would rather get his guys to invest in MonoDroid or MonoTouch.
This package contains the Core Library (mscorlib.dll) of Mono for CLI 2.0, which is the glue between the BCL (Base Class Libraries) and the JIT.
This raises some questions:
1) Who knew that libmono-corlib2.0-cil contained mscorelib.dll?
2) Who knew that mscorelib.dll contained the patented technology?
3) Since ECMA 335 does not appear to contain mscorelib.dll, who added it to the core Mono library, OR, is mscorelib.dll THE core of libmono-corlib2.0-cil and that libmono cannot function without mscorelib.dll and hence Mono cannot function without libmono?
4) Who knew mscorelib.dll was in libmono--corelib2.0-cil and still asserted that Mono was patent safe? Such a person is a liar and was aiding and abetting in a conspiracy of entrapment.
5) If someone asserted Mono was patent safe, or claimed no patented technology existed in Mono but was ignorant of mscorelib.dll being in libmono-corelib2.0-cil, will they continue to assert their ignorance?
My sig applies here: IF MS API becomes the default on the Linux desktop then what is the point of Linux?