The FSF warns (again) against Mono
Posted Jul 18, 2009 20:06 UTC (Sat) by
speaker2animals (guest, #59643)
Parent article:
The FSF warns (again) against Mono
languages. Sun probably has patents that cover Java. Maybe IBM has
patents that cover C compilers. "Shouldn't we discourage the use of
these too?" they ask.
More importantly, Microsoft probably has patents that cover these. See below.
Windows Forms. Instead, we're talking about libraries under the
System namespace that provide common functionality programmers
expect in modern programming languages: binary object serialization,
regular expressions, XPath and XSLT, and more.
Because these libraries are not defined in the ECMA specifications,
they are not protected in any way by Microsoft's Community Promise.
The patents we need protection from, and hence that need to be covered in the MCP, are
those patents that cover things in C# and CLI that are unique to C# and CLI (well, unique modulo
patent office incompetence at recognizing when software is new, useful, and non-obvious).
Regular expressions, et. al., are not unique to C# and CLI. The C# and CLI specifications of
those are the same as they are in most other languages and runtimes commonly used on Linux.
If Microsoft has any patents that cover those, those patents are just as valid against Java, C, and
every other Linux language as they are against Mono's implementation of C# and CLI.
Microsoft might also have patents covering particular algorithms they used to implement
regular expressions and those other common things in their implementation of C#, but those
particular algorithms would be no more likely to be in Mono than that are likely to be in any
other independent implementation of regular expressions or the rest.
The above argument completely deals with the section named "incomplete standards" in the
FSF's argument. The same argument also deals with the next section, "Figuring Out What's
Necessary", where they worry Microsoft patents might cover some common way of performing
some task, and so Mono could infringe that. Such a patent would cover that in the non-Mono
language systems, too. If Microsoft is going to sue over such a patent, they are far more likely to
go after something other than Mono, where they won't run into major estoppel and laches issues.
I think Java would be their most likely target, as Java is a major competitor of theirs in the
enterprise.
The "Moving the Goalposts" section stands up a bit better, in that there is nothing that is
obviously wrong at first glance. However, it shows a fundamental understanding of what a
patent is. When you get a patent on something, that gives you the right to exclude others from
practicing that patent. It does NOT give you a right the practice the patent yourself. A
popular example given in law school is that if you got a patent covering 3-legged chairs, you
could stop others from making 3-legged chairs, but you might not be able to make 3-legged
chairs either, because someone else might have a patent on legged sitting devices. Hence, if you
were to license your 3-legged chair patent to someone else, you would be foolish to write your
license as saying they are allowed to make 3-legged chairs. Your license would only say that you
will not use your patent to stop them from making 3-legged chairs.
The second concern that the FSF raises in that section, the effects of a transfer of patent
ownership on the promise not to sue, has more merit. Courts have leaned toward applying such
promises to subsequent assignees, but some have gone the other way. At least one major manual
of patent practice I know of recommends using a license over a bare promise just so you can
write into the license that it applies to assignees and not leave any doubt. (Ironically, the FSF
insists that the GPL be interpreted not as a contact but rather as a bare license, which means
that it has the same theoretical problem).
Summary: after eliminating the legally erroneous parts of the FSF's argument, we are left
with a possible concern that MCP might not apply to assignees if Microsoft ever transfers its
patents to someone else (BTW, this would have to be a legitimate transfer--courts would see
through a sham transfer to a shell company just for the purpose of getting out of MCP). For me,
that isn't enough to be of concern--I will continue on my Linux systems to use whatever
software gets the job done best, even if it is written using Mono.
(
Log in to post comments)