Linked by Thom Holwerda on Tue 7th Jul 2009 08:51 UTC, submitted by PLan
Mono Project We've already seen some heavy discussion on Mono and C# here on OSNews the past few weeks, as it became clear the patent situation regarding the ECMA parts of Mono was anything but faith inspiring. This issue seems to be resolved now: Microsoft has made a legally binding promise not to sue anyone who uses or distributes implementations of said ECMA standards. Following this news, Mono will be split in two; the ECMA standard parts, and the rest.
Thread beginning with comment 372051
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: Comment by kaiwai
by kaiwai on Tue 7th Jul 2009 10:25 UTC in reply to "RE: Comment by kaiwai"
kaiwai
Member since:
2005-07-06

I agree that this doesn't do to much for those that want to do .NET on Linux, but it should be a big boon to those who aren't interested in the entire .NET stack and instead just see the C# language itself as something of interest.


Its useless for someone interested in C# because anything of any value sits above the ECMA specification and if they wish to turn it into a real world skill then they'll have to learn about the technologies about the ECMA specification. C# has no value unless there are some value added components that sit on top - and given that Windows holds the dominances, compatibility with the value added components on top of the ECMA specification is paramount, not only for compatibility, the viability of interoperability but also for developers interested in C# and turning it into a real world skill.

Just as there is no value in C, C++ or any other language without the stack that sits on the top, be it win32 in the world, .NET Framework when it comes to managed C/C++ or the SUS03 specification when it comes to the *NIX world. Microsoft is the only company I can think of right now who threatens third party projects who reimplement a given framework on an alternative operating system. Ballmer first threatens opensource programmers over the re-implementation of win32, file formats, 'icon lay outs' etc. on *NIX by claiming that Microsoft will 'exert it's patent portfolio". When it comes to the .NET Framework they do the least humanly possible on the parts that have the least amount of value, namely, the ECMA specification is covered by a promise but anything of any value is still threatened by Microsoft's business policies.

This is Microsoft as usual, muddy the water in a hope that the murkiness will hide what their real business plan is - suck developers and third parties into an abyss so difficult to escape that when the time is right, they can screw those organisations for all they're worth. The patent challenge to TomTom was merely a shot over the bow, "f*ck with us, and we're happy to tear you a new hole - even over a trivial thing like an ancient file system driver".

Reply Parent Score: 1

RE[3]: Comment by kaiwai
by darknexus on Tue 7th Jul 2009 10:37 in reply to "RE[2]: Comment by kaiwai"
darknexus Member since:
2008-07-15

Actually, it's not useless at all. It is useless for .net, but not everybody cares about .net itself and some just want to use the language with other components. C# is actually quite a nice language imho, and it's nice to have this part, at least, finally cleared up.
It should be interesting to see what happens with regard to the .net portions of mono. Somehow, I have this sneaking suspician they won't be so kind to Mono when it comes to .net.

Reply Parent Score: 2

RE[3]: Comment by kaiwai
by setec_astronomy on Tue 7th Jul 2009 11:09 in reply to "RE[2]: Comment by kaiwai"
setec_astronomy Member since:
2007-11-17

On the issue of the non-ECMA specified parts, I pretty much agree with you. Developers interested .Net as an exit strategy from Win32 are essentially in the same (legaly unclear) situation as before the community promise. And frankly, it would not be in Microsofts current interest to make it easier to move away from their operating system and plattforms. They may have mellowed on the idea of F/OSS developments, but only as long as it happens to target Win32, preferably exclusively.

That being said, a legally safe(r) ECMA C# implemenation is of benefit to FOSS projects like GNOME, which are in need of an alternative to the C/GLib-GObject/GTK+ combo as a first class development platform which (from the outside, judging from comments from the developer community) seems to be possible with C# / CLI / GTK#, if for no other reason than recruiting people who have no desire to get their hands dirty using C.

Reply Parent Score: 2

RE[4]: Comment by kaiwai
by kaiwai on Tue 7th Jul 2009 14:23 in reply to "RE[3]: Comment by kaiwai"
kaiwai Member since:
2005-07-06

On the issue of the non-ECMA specified parts, I pretty much agree with you. Developers interested .Net as an exit strategy from Win32 are essentially in the same (legaly unclear) situation as before the community promise. And frankly, it would not be in Microsofts current interest to make it easier to move away from their operating system and plattforms. They may have mellowed on the idea of F/OSS developments, but only as long as it happens to target Win32, preferably exclusively.


What hacks me off is the fact that you don't see the sort of patent happy stupidity from the UNIX world if people dare to implement the SUS03 specification, we didn't see Sun sue third parties that implemented the Java framework (as long as they didn't call it Java), and we haven't seen Apple sue GNUStep developers for reimplementing OpenStep. Why is Microsoft the only company who seems to have this desire to be the ultimate prick of the software world?

That being said, a legally safe(r) ECMA C# implemenation is of benefit to FOSS projects like GNOME, which are in need of an alternative to the C/GLib-GObject/GTK+ combo as a first class development platform which (from the outside, judging from comments from the developer community) seems to be possible with C# / CLI / GTK#, if for no other reason than recruiting people who have no desire to get their hands dirty using C.


Ok, lets say they go down the route and develop a uniquely open source framework ontop that is oriented around GNOME - it doesn't answer the $64,000 question: who is going to implement these on Windows? GTK+ right now is a giant mess with little attention being paid by anyone - GTK# is dependent on GTK+, so if the GTK+ is horrid, then the GTK# is going to be horrid too.

It has to be re-implemented or otherwise you loose one of the key features of .NET, add to that the requirement to integrate these frameworks into a decent development environment like Visual Studio (ever used Mono Develop? it is a really bad joke) so that developers can drag, drop and assign code to GTK# widgets like they would with Winforms.

Like I said, I believe the ECMA promise that Microsoft has given to the community but the problem that I have, however, is the stuff that sits on top - there needs to be a compelling enough way of making the mono open source framework (that sits on top) compelling and transparent enough for Windows .NET developers to adopt as to expand the ecosystem to include Linux as a platform to aim for during development of applications.

Edited 2009-07-07 14:32 UTC

Reply Parent Score: 2

RE[3]: Comment by kaiwai
by dagw on Tue 7th Jul 2009 15:49 in reply to "RE[2]: Comment by kaiwai"
dagw Member since:
2005-07-06

C# has no value unless there are some value added components that sit on top

Mono can and does supply its own independent stack that sits on top of C#. Some people who know more about this than I do even claim that some of the mono bits are better than the equivalent .Net bits. Unless you are porting a windows .Net app I see no reason why you shouldn't be able to write fully usable Mono/C# apps without touching any of the .Net bits.

Reply Parent Score: 2

RE[3]: Comment by kaiwai
by JeffS on Tue 7th Jul 2009 15:58 in reply to "RE[2]: Comment by kaiwai"
JeffS Member since:
2005-07-12

Not useless at all. Period. First, the C# language itself is a very good language, with a lot of great features, nice familiar syntax, great power, with ease of development. Next, the CLI has great value. It's a great garbage collecting VM, and has great multi-language support.

Finally, the GTK# / Gnome# bindings are very valuable. Of all the various development stacks for Gnome/GTK, I have found GTK# to be the most powerful, useful, and productive.

Then there are things like the Unity framework, which uses Mono for it's scripting, and gives you the ability to rapidly develop games for both iPhone and Wii.

There are other examples as well.

BTW - the Community Promise is legally binding. There is no muddy water. At all. ECMA bits are free and clear. ASP.Net, ADO.net, WinForms, etc, are not. But I'm fine with that as well, as those things are pretty much Windows specific anyway, and if MS wants to license those things, that's totally fine with me, and it's well within their rights. As a big fan/user of open source software, I'm quite happy using FOSS technology, along with using for-pay proprietary technology (where there is added value). I also earn my living and support my wife and kids working for a proprietary software company (a very small one), and I think proprietary software has it's place (and is needed where open source can't fully deliver).

As far as I'm concerned, the whole Mono controversy is now officially put to rest. If you like Mono, and/or Mono apps, use 'em. Don't worry, be happy.

Reply Parent Score: 3

Bill Shooter of Bul Member since:
2006-07-14

Just as there is no value in C, C++ or any other language without the stack that sits on the top, be it win32 in the world,


I completely disagree with that statement. Having used C & C++ on Classic Mac OS, MSDOS, Linux, Windows, BeOS, and in embedded systems, there is most defiantly some value in having the same language constructs independent of what ever libraries you also have available. That doesn't make every program written for any of the platforms perfectly portable, but it does meant that a sizable part of your skill set is. And from the looks of it, the CLI & C# language specification contains most of the stack you would use ( with the exception of winforms and ado.net).

Reply Parent Score: 2