Re: Confused about the platform runtime discussion going on in the blogs

On Mon, 2004-03-22 at 06:56, Ryan McDougall wrote:

> The discussion for the uninitiated:
> As I understand the discussion, this is largely about the politics of
> several large companies, namely Microsoft, Novell, and Sun. There *is* a
> technical aspect: newer/higher-level languages increase productivity by
> a certain degree, and are generally nice to have. But the discussion has
> been hijacked from the technical arena by the fact that the afore
> mentioned giants are making moves that will someday affect us, so its
> better to consider the issues now, than to be caught off guard later.
> Specifically: Sun has invested itself in Java and Linux, and wants to
> leverage its proprietary language and VM on Linux. Similarly, Novell has
> invested in mono (.NET reimplementation) and Linux, and wants to
> leverage its free software VM implementation with ECMA standard C# on
> Linux. And neither would appear to accept the other becoming a standard
> platform on GNOME+Linux. The divergent forces in these companies, in
> Havoc's view, threaten to fragment the community unless some compromise
> is reached before things get out of hand.

My understanding is that mono has a pluggable backend so that it could
use the Java VM or Parrot VM instead of the MS .Net one. I happen to
think that having a common language runtime or VM is a good thing
especially for scripting languages like Python and Perl but we would
have to standardise on one of them cause its a waste of developer effort
to support more than one (AFAIK the VM's are all pretty much the same
although Parrot's is rather unique being a virtual register machine). 

Java has never taken off on the desktop and has always been most
successful as middleware with J2EE and I dont see that changing in the
near future. I would therefore prefer Mono to Java on the desktop
especially if Java remains closed source and Mono supports multiple
languages and comes with excellent developer tools too. If mono were to
use the Java VM or indeed allow Java to be used with mono then we should
have a compromise and avoid a damaging split.

I dont see any of them replacing c/c++ for everything though especially
given some of the disadvantages of managed code. Managed code is not as
fast or efficient. Managed code cannot use pointers and must use
automatic garbage collection for freeing up memory. Its not unusual for
managed code to use ten times more memory and having garbage collection
as a separate thread can impact performance too. Memory intensive apps
and speed critical ones are unsuitable for managed code. 
The estimate for RAM usage for Longhorn is in the region of 500 MB just
for the base OS (with no apps running). Having a lot of managed code
would inevitably require loads more RAM as well as requiring more
processor power. Thats the last thing GNOME needs IMO - We need to make
GNOME faster and more efficient so that older machines can be supported
especially those currently running NT or older so that when MS pulls the
support plug on them they will find GNOME and Linux a viable option (KDE
is too greedy with RAM so GNOME will definitely have the edge here).

Mono certainly has a place for rapid application development as a layer
on top of Gnome's C libraries but please not as a replacement for them

> Of course the whole situation is complicated by Microsoft, who
> "invented" the .NET platform and intends to leverage the technology to
> do some apparently impressive/cool stuff with its next OS due out 2007+.
> Despite the core technology supposedly available on reasonable and non-
> discriminatory terms, there is also a fear that Microsoft may somehow
> torpedo mono with patents at a future time.

Thats a problem for the US market yes but the rest of us who dont have
the cretinous US patent system should not be held back. I would like all
Gnome apps to support scriptable extensions just so that patent
infringing plug-ins could be developed for them. The patent infringing
parts of mono should definitely be plug-ins.  

> Microsoft's .NET looks from afar like a very bold and intelligent move
> to consolidate the whole windows environment into a powerful framework
> where data and objects are can be easily and uniformly passed around
> from program to program using any language and prove a very information
> rich operating system. 

Yes but at a price too. Also older version of windows dont have .NET so
there no danger of MS taking over the internet and replacing it with a
propriety one in the foreseeable future. GNOME badly needs a decent
component system thats easy to use in all programming languages -
probably a GObject based one (just needs a type library I think).

> If free software has no reply by the time this
> "wonder platform" comes to pass, we could look as if we cannot innovate
> against proprietary software. If we cannot unite two influential
> contributors to GNOME (Sun and Novell) and create a next generation
> platform to counter Microsoft, our efforts could splinter and loose
> ground.

I dont think thats relevant. Just cause MS has something doesn;t mean we
have to have it too. If mono allows Windows apps to run on Linux in the
future then yes that would be fantastic but Longhorn = longshot IMO - I
can see .NET as being another failed MS technology cause
business/enterprise's dont want thick clients like Longhorn - they all
want thin clients.

> But, whats really the most important thing about the whole debate is
> asking ourselves what we want, and at what cost. Should we alienate Sun,
> or Novell, or both? Should we leave things as they are, and let the
> future decide our direction? Or should we create our own platform, using
> existing tools such as Perl and Python? These are very good questions,
> and I don't know if anyone has mentioned something that has convinced me
> that they have the answers. What I am convinced about is that the
> community is the strength of free software, and this debate is part of
> the reason why, no matter the outcome, we will remain stronger than
> microsoft, sun, or novell, could possibly imagine.

As I said above we could unite all the languages (except c/c++ and other
unmanaged ones) including Java under one common language runtime or VM.


> Hope what I've said helps some. I'm posting to d-d-l since I think there
> is room for opinions from non-blogging people, so lets please *try* to
> keep on the topic of the future of the GNOME desktop from a developers
> point of view. (Heres hoping its not a flame fest! ;))
> ps. Please correct any technical inaccuracies, I'm not trying to spread
> FUD.
> Cheers,
> Ryan
> _______________________________________________
> desktop-devel-list mailing list
> desktop-devel-list gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]