The Shared Source CLI archive contains the following technologies in source code form:
An implementation of the runtime for the Common Language Infrastructure (ECMA-335).
Compilers that work with the Shared Source CLI for C# (ECMA-334) and JScript.
Development tools for working with the Shared Source CLI such as assembler/disassemblers (ilasm, ildasm), a debugger (cordbg), metadata introspection (metainfo), and other utilities.
The Platform Adaptation Layer (PAL) used to port the Shared Source CLI from Windows XP to other platforms.
Build environment tools (nmake, build, and others).
Test suites used to verify the implementation.
A rich set of sample code and tools for working with the Shared Source CLI.
What can I do with the Shared Source CLI?
There is a wealth of programming language technology in the Shared Source CLI. It is likely to be of interest to a wide audience, including:
Developers interested in the internal workings of the .NET Framework can explore this implementation of the CLI to see how garbage collection works, JIT compilation and verification is handled, security protocols implemented, and the organization of frameworks and virtual object systems.
Teachers and researchers doing work with advanced compiler technology. Research projects into language extensions, JIT optimizations, and modern garbage collection all have a basis in the Shared Source CLI. Modern compiler courses can be based on the C# or JScript languages implemented on the CLI.
People developing their own CLI implementations will find the Shared Source CLI an indispensable guide and adjunct to the ECMA standards.