Microsoft's C# (Sharp) & .NET -- A Heads Up

yonik at my-deja.com yonik at my-deja.com
Tue Jun 27 17:38:59 EDT 2000


I skimmed over the C# (C sharp) spec... it addresses many of the
things that I didn't like about java (still leaves some though).
 - preprocessor!!! (I always want this for debugging code)
 - no stupid restrictions of 1 public class per file (bad for
   fast prototyping)
 - unified type system.. everyting is an object, even primitive types
 - addition of goto and unsafe... good for sparing use in high perf
   code.
 - foreach loop iterator
 - enums
 - structs (paired down class that can be stored on stack, etc)
   this one is *very* important.  It allows greater abstraction without
   a runtime cost.
 - properties&indexers (can make code execute on get/set of members)
 - versioning of classes
 - out parameters to methods
 - verbatim string literals (also alows multiline)
 - control of overflow checking
 - attributes (can attach to objects, classes, interfaces, etc)
What is missing that I would like to see:
 - templates (parameterized types)
 - operator overloading (so I can make classes on par with builtin ones)
 - Multiple inheritance for classes (they currently only do interfaces).
   - I don't like the separation of class/interface...  One may have to
     use classes by someone else that did not have the foresight to
     base the hierarchy on interfaces.  Without MI for classes, you are
     now stuck unless you can modify their source code.  Even Sun didn't
     have enough foresight with many of their classes and had to rewrite
     using interfaces later.
 - built in vector and map primitives (like python)

Overall, it is a better language than Java... I just don't know if it
will ever get the support (and good JIT compilers) that Java has now.
Everytime I use Java, I run up against artificial barriers that Sun put
up to "protect" users that they though was bad in C++... makes me
crazy.

I hope MS will standardize the runtime env also and do a better job on
the VM than Sun did.

Of course, if speed isn't critical, I just use Python :-)

-Yonik



Sent via Deja.com http://www.deja.com/
Before you buy.



More information about the Python-list mailing list