Lambda the Ultimate

inactiveTopic C# details (and .NET SDK)
started 8/9/2000; 12:05:57 AM - last post 8/10/2000; 8:02:32 PM
andrew cooke - C# details (and .NET SDK)  blueArrow
8/9/2000; 12:05:57 AM (reads: 1029, responses: 3)
C# details (and .NET SDK)
Not sure this is very exciting (skimming through it looks like a mix of Java and C++), but a fair amount of info is now available on Microsoft's C# language.

More info on the whole .NET project, including the .NET SDK is here (I can't work out whether downloading the .NET SDK will let you try C# or not - I guess so).

(I found this page via elj which is a nice Eiffel-ish site that often has info on other languages)
Posted to "" by andrew cooke on 8/9/00; 12:15:26 AM

Ehud Lamm - Re: C# details (and .NET SDK)  blueArrow
8/10/2000; 4:11:50 AM (reads: 1059, responses: 0)
I wrote about C# on Gulliver, and even gave it as the subject of one fo the surveys.

This language is an eclectic mix of features from C, C++, Java and more cutting edge languages. Interesting features include: direct XML support, interfaces, event-based programming model, versioning, and built-in COM support.

It is worth arguing which of these should be language facilites, and which should be provided via libraries.

What I really disgust is the awful syntax, that C# as well as C++ and Java inherited from C. When we say inheritance is useful - we don't mean this kind of inheritance...

Ehud Lamm - Re: C# details (and .NET SDK)  blueArrow
8/10/2000; 4:18:21 AM (reads: 1064, responses: 1)
I didn't read the docs closely enough to say myself, but how would you rate C# in terms of these criteria?

Chris Rathman - Re: C# details (and .NET SDK)  blueArrow
8/10/2000; 8:02:32 PM (reads: 1132, responses: 0)
C# is just another C derivative language that is quite close to Java in nature - mostly just a rearrangement of features. Let's see, no generics/template mechanism. No Lambdas/Code Blocks. Implementation is single inheritance. No built-in mechanism to handle lists. IOW, this covers the same territory as Java - not surprising since the real motivation behind the language is that MS was prevented from extending the Java language.

As far as orthogonal design, C# is far removed from the Smalltalk philosophy that everything's an object. We have structures - which are just singleton classes in disguise. We enums. We have a squirlly way to define methods (both get & set are defined in a single method). We have events. etc.... A whole bunch of things in the language which are slightly different but not quite true objects.

One other thing worth mentioning is that ISE is porting Eiffel to the same .NET framework and redubbing it Eiffel#. That same limitation of single implementation inheritance is imposed on Eiffel#, as well as preventing the subclassing of the Expanded types, and no covariance.