Chapter 1. Introduction to the Common Language Infrastructure


The Common Language Infrastructure (CLI) is an International Standard that is the basis for creating execution and development environments in which languages and libraries work together seamlessly. The CLI specifies a virtual execution system that insulates CLI-compliant programs from the underlying operating system. Where virtual execution systems are developed for different operating systems, programs written with CLI-compliant languages can be run in these different systems without recompiling, or worse, rewriting.

Programming with CLI-compliant languages ultimately gives the programmer a simple but rich development model, allowing development in multiple languages, promoting code reuse across languages, and removing most of the plumbing required in traditional programming. The CLI makes it possible for modules to be self-registering, to run in remote processes, to handle versioning, to deal with errors through exception handling, and more.

This book, by amplifying the standard, provides a blueprint for creating the infrastructure for this simpler programming model across languages and across platforms. Because the theme of the CLI is broad reach, it also includes provisions for running modules compiled by existing languages into "native code" machine code targeted at a specific system. This is called unmanaged code, as opposed to the managed code that is CLI-compliant.

This book also describes what is required of languages to be CLI-compliant, and what library developers need to do to ensure that their libraries are accessible to any programmer writing in any CLI-compliant language. In addition, it provides the guidelines for implementing a virtual execution system, which insulates executables from the underlying operating system.

This chapter is an overview of the CLI and attempts to provide a key to understanding the standard. In addition, throughout the specification, annotations explain many of the details either clarifying what is written in the specification or explaining the origins of some of its elements.



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