213x Filetype PDF File size 1.85 MB Source: www.ecma-international.org
Standard ECMA-334
December 2001
Standardizing Information and Communication Systems
C#LanguageSpecification
.
Phone: +41 22 849.60.00 - Fax: +41 22 849.60.01 - URL: http://www.ecma.ch - Internet: helpdesk@ecma.ch
1
2 Brief history
3
4 This ECMAStandardisbasedonasubmissionfromHewlett-Packard, Intel, and Microsoft, that describes a
5 language called C#, which was developed within Microsoft. The principal inventors of this language were
6 Anders Hejlsberg, Scott Wiltamuth, and Peter Golde. The first widely distributed implementation of C# was
7 released by Microsoft in July 2000, as part of its .NET Framework initiative.
8 ECMATechnicalCommittee39(TC39)TaskGroup2(TG2)wasformedinSeptember2000,toproducea
9 standard for C#. Another Task Group, TG3, was also formed at that time to produce a standard for a library
10 and execution environment called Common Language Infrastructure (CLI). (CLI is based on a subset of the
11 .NETFramework.)AlthoughMicrosoft’s implementation of C# relies on CLI for library and runtime
12 support, other implementations of C# need not, provided they support an alternate way of getting at the
13 minimumCLIfeaturesrequired by this C# standard.
14 Asthedefinition of C# evolved, the goals used in its design were as follows:
15 • C#isintended to be a simple, modern, general-purpose, object-oriented programming language.
16 • Thelanguage, and implementations thereof, should provide support for software engineering principles
17 such as strong type checking, array bounds checking, detection of attempts to use uninitialized variables, and
18 automatic garbage collection. Software robustness, durability, and programmer productivity are important.
19 • Thelanguage is intended for use in developing software components suitable for deployment in
20 distributed environments.
21 • Source code portability is very important, as is programmer portability, especially for those
22 programmers already familiar with C and C++.
23 • Support for internationalization is very important.
24 • C#isintended to be suitable for writing applications for both hosted and embedded systems, ranging
25 from the very large that use sophisticated operating systems, down to the very small having dedicated
26 functions.
27 • Although C# applications are intended to be economical with regards to memory and processing power
28 requirements, the language was not intended to compete directly on performance and size with C or
29 assembly language.
30 Thedevelopment of this standard started in November 2000.
31 It is intended that the final version of this ECMA Standard will be submitted to ISO/IEC JTC 1 for adoption
32 under its fast-track procedure.
33 It is expected there will be future revisions to this Standard, primarily to add new functionality.
34
35
36
37
38
39
40 Adopted as an ECMA Standard by the General Assembly of December 2001.
iii
no reviews yet
Please Login to review.