dotgnu-general
[Top][All Lists]
Advanced

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

Re: [DotGNU]Microsoft & Mono


From: Soeren Sandmann
Subject: Re: [DotGNU]Microsoft & Mono
Date: 16 Jul 2001 17:47:07 +0200
User-agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7

Kent Nguyen <address@hidden> writes:

> The only thing Java need left is an open standard for Inter
> Component Communication ... something like XML-RPC.  Beside C# is so

Note that SOAP *is* an open standard.  Ximian has developed/is
developing a free implementation in C.  It is available in the Gnome
cvs repository at

        http://cvs.gnome.org/lxr/source/soup/

There is also a tarball somewhere at ftp.gnome.org.

> much like Java, you can even call it Java.

The CIL/CRL is technically superior to Java.  Saying otherwise is just
MS-bashing.  Here are some points where CIL/CRL is technically better:

        - Stack allocated types.  In Java, record types are always
          heap allocated

        - Unmanaged code.  In CIL/CRL it is possible to run unmanaged
          code.  This makes it possible to run C on the platform. (But
          not with garbage collection or typesafety).  JVM does not
          have this conecept.

        - Managed pointers.  It is possible to have a pointer to a
          field of an object.  In java, the only pointers are object
          references.

        - Native sized integers.  CRL/CIL has both integers of a fixed
          size and integers of native size.  Java only have integers
          of fixed size.

That said, the 'multi-language support' is not for real.  The features
of CIL/CRL closely match C#, and any language that is going to run
effectively (managed) on the platform, will be a C# subset (modulo
syntax, of course).

Politically, CIL/CRL has been submitted to ECMA for standardization,
while Sun on the contrary is sitting tight on the Java specs.  Of
course, MS has a track record of embracing and extending things.  They
can do this with CIL/CRL as well; this is most likely the greatest
danger with it (aside from Passport, which as I understand it doesn't
really need a virtual machine to work).

> Take for example C# uses "using", Java uses "import".  C# uses the same 
> syntax and semantic as Java.  

C# with its stack allocated structure is strictly more expressive than
Java.  Aside from that, the differences are mostly syntactical.

> Microsoft markets the idea of "automatic 
> garabage collection."  But the JVM (Java Virtual Machine) already does that.

Yes, and so does every other runtime designed since 1980 (except C++,
which was designed to be compatible with C).


reply via email to

[Prev in Thread] Current Thread [Next in Thread]