|<<>>|270 of 274 Show listMobile Mode

What is .NET?

Published by marco on

Updated by marco on

Ars Technica is running a great article called Microsoft .Net aims to demystify .NET and clear up some of the misunderstandings and deliberate obfuscations surrounding it.

“In a remarkable feat of journalistic sleight-of-hand, thousands of column inches in many “reputable” on-line publications have talked at length about .NET whilst remaining largely ignorant of its nature, purpose, and implementation. Ask what .NET is, and you’ll receive a wide range of answers, few of them accurate, all of them conflicting. Confusion amongst the press is rampant. … The more common claims made of .NET are that it’s a Java rip-off, or that it’s subscription software. The truth is somewhat different.”

The article is 5 pages long, but is well worth it if you’re planning to use .Net or want to find out whether you want to use it.

One piece that is not a necessary part of .Net is C#, Microsoft’s new programming language. Anders Heljsberg, designer of C# (and, previously, Delphi and the VCL for Borland) talked to The Register about the future of the language.

“According to Anders, generics (parametic polymoprhism) is one of the directions in which C# would evolve. Microsoft already has a prototype of the runtime in generics. “The trick is to proceed with caution,” he advises.”

Well, duh. Java made the same mistake that C# does by leaving generics out of the language. Not having them from the beginning is stupid for two reasons. The first is that building a container library without it results in containers that require an inordinate amount of casting (flouting any typing system) in order to work. The second is that the new language won’t be out for a while, which lets a lot of legacy code get written using the old version of the container library.

I imagine they’ll also finally realize that multiple-inheritance is also necessary, then realize that they painted themselves in a corner by leaving it out of the CTS (Common Type System). Fortunately for them, Eiffel has already figured out how to work both genericity and multiple-inheritance into the CTS.

In other .NET news, the open-source implementation of .NET, called Mono now compiles itself on both Windows and Linux platforms. This means that the developers no longer need Microsoft’s tools in order to finish their development. They also have some fancy graphics showing the class libraries used to create the compiler. The class libraries (if you read the article, you’ll know that’s one of the main components of .NET) are also almost complete.