ECMA C# and Common Language Infrastructure Standards
The C# Language and the Common Language Infrastructure (CLI) specifications are standardized through Ecma International®. The first editions of these standards were published by Ecma in December 2001.
Subsequent revisions to the standards have been developed by the TC49-TG2 (C#) and TC49-TG3 (CLI) task groups within the Programming Languages Technical Committee (TC49), and adopted by the Ecma General Assembly and subsequently by ISO/IEC JTC 1 via the ISO Fast-Track process.
|ECMA-334.pdf||C# Language Specification|
|ECMA-335.pdf||Common Language Infrastructure|
|ECMA-335.zip||XML-based Library Specification|
|TR-084.pdf||Information Derived from Partition IV XML File|
|TR-084.zip||XML Tool, Libraries in Microsoft© Word and PDF|
The official ISO/IEC documents are available from the ISO/IEC Freely Available Standards page. These links are direct from that page:
|ISO/IEC 23270:2018||Information technology — Programming languages — C#|
|ISO/IEC 23271:2012||Information technology — Common Language Infrastructure (CLI)
Partitions I to VI
|ISO/IEC TR 23272:2011||Information technology — Common Language Infrastructure (CLI)
— Technical Report on Information Derived from Partition IV XML File
Members of the Standard committees and others have combined to produce annotated versions of previous versions of these Standards. These are:
- The Common Language Infrastructure Annotated Standard, James S. Miller & Susann Ragsdale, Addison-Wesley, 2004, ISBN 0-321-15493-2 (based on Edition 2 of Ecma-335)
- C# Annotated Standard, Jon Jagger, Nigel Perry & Peter Sestoft, Morgan Kaufmann, 2007, ISBN 978-0-12-372511-0 (based on Edition 4 of Ecma-334)
Microsoft Implementation Specific Version
The following document is a version of the CLI specification with Microsoft implementation-specific notes added. These notes provide extra information about Microsoft’s Common Language Runtime (CLR) implementation of the CLI.
In August 2000, Microsoft Corporation, Hewlett-Packard and Intel Corporation co-sponsored the submission of specifications for the Common Language Infrastructure (CLI) and C# programming language to the international standardization organization Ecma. As a result, Ecma formed two task groups (TG3 and TG2, respectively) within TC39, its technical committee responsible for programming languages and application development.
During the next year, the co-sponsor companies, in conjunction with other Ecma members and guests (including IBM, Fujitsu Software, Plum Hall, Monash University and ISE), refined these specifications into standards. In December 2001, the Ecma General Assembly ratified the 1st edition of the C# and CLI standards as Ecma-334 and Ecma-335, respectively. A technical report on the CLI, Ecma TR-84, was also ratified.
In late December, 2001, Ecma submitted the standards and TR to ISO/IEC JTC 1 via the latter’s Fast-Track process. The ISO/IEC standards and TR were published in April 2003 and are known formally as ISO/IEC 23270 (C#), ISO/IEC 23271 (CLI) and ISO/IEC 23272 (CLI TR). Equivalent specifications were adopted as 2 nd edition standards and TR by Ecma at its December 2002, General Assembly.
Subsequent to the initial revisions, both standards have been updated with new features and corrections. Each revision undertaken through the Ecma task groups has subsequently been submitted through the ISO/IEC JTC1 Fast-Track process. These revisions include a Foreword that describes the changes from the previous revision. Ecma provides historical revisions to the ECMA-334 and ECMA-335 standards.
To participate in the standardization process, contact your organization’s Ecma representative. If your company does not currently participate in Ecma and wishes to do so, please contact Ecma directly.
The following organizations have participated in the work of Ecma TC39/TG2 and TC39/TG3 and their contributions are gratefully acknowledged: Borland, École Polytechnique Fédérale de Lausanne, Eiffel Software, Fujitsu, Google, Hewlett-Packard, Humanitarian Toolbox, Intel Corporation, IBM Corporation, ISE, IT University Copenhagen, Jagger Software Ltd., JP National C# Standards Committee, JSL (UK), Kahu Research (New Zealand), Microsoft Corporation, Monash University, Netscape, Novell Corporation, OpenWave, Phone.Com, Plum Hall, Sun Microsystems, Twin Roots, and Xamarin.