[clug] Mono in Linux

Chris Smart mail at christophersmart.com
Tue Jun 2 07:48:53 GMT 2009


2009/6/2 Francis Markham <fmarkham at gmail.com>:
> The problem with that argument is C# is not a proprietary programming
> language.  C# is an ECMA-standard.  .NET is a proprietary
> implementation of that standard, Mono is an open source
> implementation.

Mono might include an implementation of C# and CLI standards, but it
is more than just that. There are also additional components in Mono
which are not part of the standards, such as Winforms and ASP.NET,
etc.

Look at the Mono front page, it says:
"Mono is a cross platform, open source .NET development framework."

Not:
"Mono is a cross platform, open source implementation of C# and CLI standards."

> While Mono's implementation may be infringing on unknown patents, so
> may GCJ/GCC/spidermonkey/<insert-favourite-language-implementation-here>.
>  You still fail to explain exactly how mono is so different.

Of course they might, I'm not suggesting that they aren't in this way.
However the difference is that the patents around .NET *are known* -
not to the general public, but to Novell which is licensing them from
Microsoft. We are willingly developing in a platform which is patent
encumbered and controlled by Microsoft. I think there's a difference
there. Sure, Microsoft grants patent licenses over C# and CLI now (as
long as it remains a standard), but just what that will mean in the
future we don't know. Whether they will continue to license patents to
Novell in the future, we don't know.

Microsoft licenses their .NET patents to Novell for inclusion in Mono.
Novell then licenses Mono and these patents to their clients and
leaves everyone else out in the cold. Sure, Novell might not be able
to sue you thanks to the GPLv2, but others can. And that might be fine
because we can fork Mono, remove the patent issues and develop it
ourselves, hopefully. In the mean time Microsoft and Novell will
continue to collect royalties and our free software will be encumbered
until we can remove all the issues. That's their business model, and
for the free software world it just doesn't seem right to me.

Now, if Microsoft released .NET under the GPL, that would be
different. If Novell had a "Samba-like" agreement with Microsoft where
they include never-ending royalty-free use of all .NET related patents
to everyone (not just Novell customers) and all derived works thereof,
then that would also be different. Even if Novell released Mono under
the GPLv3 (like Samba did) that would be better than it is now.

If you don't care about interoperability and are happy for Mono (or a
fork thereof) to go off in its own direction and remove any patent
issues which come to light, then I can see how it's a non-issue. I get
that. But I'm not sure that's how it's going to happen. The point of
Mono is to allow Windows software to run on open source platforms, and
vice versa. Will Novell remove patented technology from Mono? Well
they haven't so far. They are promoting the sale of licenses
specifically so that you're covered against Microsoft's patents. And
if you don't buy a license from Novell, then you're not covered and
they won't help you. They want Mono to be compatible with Windows,
because that's how they're making money from it. And it can't be
compatible with Windows if they remove the parts of Mono which
Microsoft has patented.

-c


More information about the linux mailing list