Where Did the Standard Come From?


This standard started with a band of troublemakers (as most big ideas do), this time at Microsoft. They had a vision of a multi-language standard that would allow programmers to use whichever language best fit the programming task for any module. Furthermore, they believed that these modules should not only work together correctly, but it should be possible to run them on any operating system without rewriting or recompiling.

This idea faced a lot of opposition in a company whose different divisions had invested huge amounts of time and effort in different programming models; no group wanted to give up its special model. Good technology finally prevailed, however, and the .NET concept, with the development of the Common Language Runtime, gained acceptance.

Language groups within Microsoft were involved in early design talks, and by 1999 the talks had expanded to include language developers from outside Microsoft. Many of these discussions were contentious, but they resulted, eventually, in the CTS and the CLS. More significantly, all of Microsoft's Visual Studio languages did what was necessary to comply with the rules. All of the languages had to make significant changes to their initial designs. The Visual Basic team, in fact, did a complete redesign of the language. Another thing that laid the foundation for creating a standard is that the group at Microsoft started partnerships very early in the process with language and system developers around the world, to ensure that it would really work as a standard, not just an in-house flash in the pan.

Early on, the development team recognized that the concept of the CLI made sense only if it was in wide use, and the best way to do that was to turn it into a standard that was freely available. So, in 2000, long before the release of Microsoft's Common Language Runtime, Jim Miller, a senior architect of the CLI, went to a meeting of ECMA International, an international industry association for the standardization of information and communications systems, to talk about creating a standard. At that time, it was informally agreed that the CLI should be submitted.

About a year later, after Hewlett-Packard and Intel had joined Microsoft as co-sponsors, a meeting of the ECMA Technical Committee TC39 in Bristol, England, was presented with three documents (1) what is now Partition I of this book, (2) a document containing information for compiler designers (now the first half of Partition II), and (3) an XML version of the documentation of the Base Class Libraries. Other companies, such as Fujitsu, who was interested in developing a compliant COBOL, had also joined the effort. The copyright was turned over to ECMA, and standardization really began.

At this writing, Microsoft has shipped as product five implementations of the CLI (or a large subset thereof). Of those, three are completely independent implementations, sharing no code at all. These are:

  1. The Common Language Runtime, and derived from that is the Shared Source CLI (commonly known as Rotor).

  2. The .NET Compact Framework, and derived from that code base is a CLI being used for the Microsoft TV platform, called the Microsoft .NET Compact Framework TV Edition.

  3. A minimal CLI, called the Smart Personal Objects Technology (SPOT), being used for very small devices, like watches.

Other CLIs are under development by other companies, such as the Mono project by Ximian, an open-source project called the DotGNU Portable.NET, and one developed as a research project at Intel Corporation.



The Common Language Infrastructure Annotated Standard (Microsoft. NET Development Series)
The Common Language Infrastructure Annotated Standard (Microsoft. NET Development Series)
ISBN: N/A
EAN: N/A
Year: 2002
Pages: 121

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net