|
GNOME Platform StormcloudsGNOME Platform StormcloudsPosted Mar 29, 2004 8:52 UTC (Mon) by massimiliano (subscriber, #3048)In reply to: GNOME Platform Stormclouds by mly Parent article: GNOME Platform Stormclouds
"Because Microsoft will be allowed to pursue royalty revenue from the APIs it publishes, Jeremy Allison says that the projects such as Samba, which he jointly leads, may face a prohibitive hurdle." Quoted from http://theregister.co.uk/content/4/36520.html Are we sure no such issues will pop up with .NET? The main reason why this is not an issue for GNOME is that .NET (and, more importantly, mono) is not a monolithic thing, kind of "all or nothing". Miguel tried hard to explain this, basically there are three large pieces in mono: the ECMA core, the Microsoft APIs reimplementation, and the Linux/Unix/GNOME APIs bindings. The only piece that can have some issue (in the sense you mention above) is the reimplementation of the Microsoft APIs, and it is totally unrelated with the other big chunk of APIs (the Linux/Posix/GNOME ones). This is something very important: the only thing Microsoft can do is create difficulties in emulating the Windows APIs, which are needed only if you want to run .NET applications "conceived" for Windows. In mono, we are creating a different "stack" of APIs, that give access to the Posix world, GTK+, Mozilla, Evolution, and ultimately all the GNOME libraries. On these, Microsoft has no rights at all. Of course software patents are a different issue... but those patents would have to apply to the GNOME libraries themselves, and therefore would be a problem even today, and without mono (I hope you get the point, otherwise feel free to ask for a clarification). Is it really clear that CORBA is no good as an infrastructure for GNOME? Why would .NET be so much better? Hmmm... CORBA is just like a specific application of .NET remoting, and just that. .NET is much more powerful, it is a whole platform for software developing and execution. In simpler words, CORBA has no bytecode and virtual machine definition, and no real class libraries. It is just a way to define remote interfaces, with one protocol to have them talking each other, and the specification of language bindings to use these interfaces. In fact, GNOME components (Bonobo objects) are based on CORBA, and the result is not so exiting. The KDE guys started with CORBA, too, but then sow how bad it was for in process desktop components, and threw it avay, going for a "propriatery" component system (KParts) which works very well ("propriatery" because they designed it themselves, it is not based on any existing standard, but of course it is free software).
So, .NET would be better because it would be a real platform to write code, not just a way to specify abstract interfaces that turns out to be overkill and cumbersome to use for in-process components. And mind you, I have always liked CORBA a lot, it is simply not a tool for this job (and, by the way, you could also have CORBA objects in .NET if you really wanted so, at least in principle, but it seems to me that current IIOP implementations are not yet "carrier grade").
(Log in to post comments)
|
Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.