Importance of C# (was Re: IronPython-0.6 is now available!)

ziller ziller at gmail.com
Sat Aug 7 11:57:56 EDT 2004


> After reading a tutorial on c#, I see immediately that it has all the
> features that I disliked in Java.
> 
> 1) Everything is derived from "Object"

Pure OO is supposed to be an advantage.  Otherwise casting hacks have
to be used and understood.

> 2) Some things have value semantics, some have reference

Like arrays having reference semantics?  That's how memory is layed
out in assembler, C, <real programming language writing against the
machine>.  This just shows how you need a little understanding of how
the architecture works under the hood to really grasp why things are
done a certain way in a language.  It's intuitive and correct if you
understand it properly (and there is no alternative if speed is a
concern).

> 3) No multiple inheritance

This has been covered to death.  MI implementation is a nightmare. 
I'm sure some design pattern would map any 'needed' MI solution to an
equivalent one using interfaces and SI.

> I'm not sure about 2 others:
> 
> 4) No serious generic programming support

It'll be there for 2.0.  And the implementation is superb (much like
Eiffel's generics)

> 5) Only OO supported:

Good.  I didn't like OO originally either.  But if you just look at it
from the perspective of having another layer of abstraction then it
does make lots of sense pragmatically (a good thing: sort of like
modules->packages).

Isn't it...<insert party-line nonsense here>



More information about the Python-list mailing list