Wow, did you misunderstand what I said!
evildictaitor wrote:Let C# and the CLR grow into a truly standardized platform/language,
C# is already an ECMA/ISO standard. CLR cannot be changed between .NET major versions for technical reasons and exists only as CLR1.0 (.NET1.0-.NET1.1) and CLR2.0 (.NET 2.0 - .NET 3.5+). Since CLR is a binary low level language, the instruction set can be easilly obtained (there are 285 instructions, all of which are stack/call based).
This means that C# and the MSIL cannot change at Microsoft's whim and both are therefore essentially hard-and-fast and open standards.
Taken by itself, obviously my statement is not accurate. However, go back and read the entire post. I obviously know that C# and the CLR are standardised, since I said so numerous times. The meaning here is the same as from Wikipedia, though I'm not purposely clouding the discussion with FUD. The current problem with the standard is that it's not complete (missing necessary components, such as a GUI library, that Microsoft includes in their proprietary version but didn't include in the standard).
including contributions from other vendors back into the standard.
There is no evidence that a community created standard is any better than one which is set by a corporation and "finished". (See PHP versus ASP).
I'm not calling for a "community created standard". Obviously, since the standard is already created, and wasn't done so via "community". What I am calling for is community participation NOW. If Microsoft isn't going to provide implementations on all platforms, this is ESSENTIAL in order to ensure the standard actually can be implemented on all platforms in an efficient manner. This doesn't mean willy nilly community contributions, like in many OpenSource projects. I'm envisioning something more along the lines of other ISO standards, such as C++, where vendors of various implementations and other interested parties participate in a standards committee. With out this, it's a little hard to consider .NET a full "cross platform standard".
IOW, do what Java should have done from the very start.
Please don't ask C# to become more like Java. C# is so much better than Java that Sun is now running to catch up.
Oh jeez. No one asked C# to become more like Java, least of all myself. I can go on for days about the problems with Java, most of which have never existed in C#. All I was doing was making a comparison between the processes used by the two. Java chose to remain proprietary, but provided implementations on practically all platforms. Microsoft standardized, but only provided a (supported) implementation for Windows. I think that Microsoft's approach is better, but it will only work if an effort is made to truly make it a "full standard" by taking the steps I outlined. Otherwise, despite technically being a standard, it will forever be viewed as a proprietary language/platform available basically only on Windows. IOW, you have to fix the perception before the technical reality will be accepted.