Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
1–10 of 87 posts
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#2They created C# because they wanted a native language for their .NET runtime that integrated seamlessly with Windows. It was obvious that cross platform runtimes were going to be the future and Microsoft couldn't depend on an outside company to drive the technology platform they would be relying on.
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#3They created Visual J++ because Java scared them and also because Java didn't work very well with Windows. Sun Microsystems sued them and Microsoft had to deprecate Visual J++ and its runtime. They created C# because they wanted a native language for their .NET runtime that integrated seamlessly with Windows. It was obvious that cross platform runtimes were going to be the future and Microsoft couldn't depend on an o…
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#4Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#5They created Visual J++ because Java scared them and also because Java didn't work very well with Windows. Sun Microsystems sued them and Microsoft had to deprecate Visual J++ and its runtime. They created C# because they wanted a native language for their .NET runtime that integrated seamlessly with Windows. It was obvious that cross platform runtimes were going to be the future and Microsoft couldn't depend on an o…
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#6They created Visual J++ because Java scared them and also because Java didn't work very well with Windows. Sun Microsystems sued them and Microsoft had to deprecate Visual J++ and its runtime. They created C# because they wanted a native language for their .NET runtime that integrated seamlessly with Windows. It was obvious that cross platform runtimes were going to be the future and Microsoft couldn't depend on an o…
IMO, it's pretty straight-forward. They created it because of Java. If Java doesn't exist, C# doesn't exist.
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#7They created Visual J++ because Java scared them and also because Java didn't work very well with Windows. Sun Microsystems sued them and Microsoft had to deprecate Visual J++ and its runtime. They created C# because they wanted a native language for their .NET runtime that integrated seamlessly with Windows. It was obvious that cross platform runtimes were going to be the future and Microsoft couldn't depend on an o…
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#8Java most definitely was not good enough in the 1990s. It's true that C# 1.0 was very close to a Java clone it still added a couple of very nice improvements such as value types and ref and out parameters making it much easier and cleaner to return multiple values from a method. Features like these didn't add much complexity to the language, and greatly improved the ergonomics. Sun could have (and should have) copied…
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#9Java most definitely was not good enough in the 1990s. It's true that C# 1.0 was very close to a Java clone it still added a couple of very nice improvements such as value types and ref and out parameters making it much easier and cleaner to return multiple values from a method. Features like these didn't add much complexity to the language, and greatly improved the ergonomics. Sun could have (and should have) copied…
Out and ref was not a clean way to return multiple values - they are actually a pretty ugly way to return multiple values. (Tuple unpacking is the clean way, but that has only recently been added.) Out and ref was added because C++ API's had call by reference, and MS wanted to make integrating with windows API's easier. I suspect value types (structs) were added for the same reason.
That said, C# did end up a much better language than Java, especially with later improvements like generics and Linq.
Re: Why did Microsoft create C#? Wasn't Java good enough in the 1990s?
#10I think much of the difference comes from the nature of the language designers and the timing of the language's creation. Joy had the handicap of going first, and Java has some choices that reflect that. Hejlsberg got to look at the weakness of Java to make C#. Overall, I think the practical approach to C# makes it a more useful language than Java, where Joy has some definite philosophical baggage he's carrying around that is reflected in Java.
Note we're talking a fairly fine gradation here. If you need to work in either, you're not slumming.