Ecma C# and CLI Standards
In June 2006, the General Assembly of the international
standardization organization Ecma approved the fourth edition of the
Common Language Infrastructure (CLI) and C# specifications, as updated
Ecma-334 and Ecma-335, respectively.
In July 2005, Ecma submitted the standards and TRs to ISO/IEC JTC 1
via the latter's Fast-Track process; they were adopted as standards by
ISO in April 2006.
Download latest specifications
The following official Ecma documents are available for C# and CLI:
What is new in the third and fourth editions
Aside from bug fixes, major enhancements over previous editions
include:
C#:
- First-class language support for generics
- Anonymous methods
- Iterators
- Partial classes
- Nullable value types
CLI:
- First-class support for generics at the runtime and class library
level
- An API to help developers begin multithreaded and parallel
programming
- Enhancements to the Common Intermediate Language (CIL) and Common
Language Specification (CLS)
- An interchangeable debug format
Background on previous editions
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 subsequent
6-month evaluation and comment period resulted in two NO votes (Japan
and UK) on the draft standards, and one NO vote (Japan) on the draft
TR. All comments resulting from this review were considered at a
ballot resolution meeting held in October, 2002. The two NO votes on
the standards were resolved, making acceptance unanimous. However,
Japan did not change its NO vote on the draft TR (Japan would like to
see a formatted/readable rendering of the CLI class library as part of
the standard, not as a TR; this will be considered for a future
edition).
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 2nd edition
standards and TR by Ecma at its December, 2002, General
Assembly.
Joining Ecma
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 (http://www.ecma-international.org)
directly.
Acknowledgements
The following organizations have participated in the work of Ecma
TC39/TG2 and TC39/TG3 and their contributions are gratefully
acknowledged: Borland, Fujitsu, Hewlett-Packard, Intel Corporation,
International Business Machines, ISE, IT University Copenhagen,
Microsoft Corporation, Monash University, Netscape, Novell
Corporation, OpenWave, Plum Hall, Sun Microsystems, University of
Canterbury New Zealand.
Many of the organizations that have participated in the TC39/TG2
and TC39/TG3 work have volunteered to mirror this site. The URLs for
the mirror sites are:
This mirror is maintained by
Peter Sestoft (sestoft@itu.dk) 2004-07-06,
2005-08-12, 2006-01-23, 2007-10-18