Introduction of C
C is often termed as a middle level programming language because it combines the power of a high level languages with the flexibility of a low level languages. High level languages have lot of built-in features and facilities, which result in hight programming efficiency and productivity. Low-level language, on the other hand, are designed to give more efficient programs and better machine efficiency.
C is desinged to have a good balance both extremes. Programs written is c give relatively high machine efficiency as compared to the high level languages ( though not as good as low level languages). Similarly, C language programs provide relatively high programming efficiency as compared to the low level languages ( though not as high as those provided by high level languages). thus, C can be used for a whole range of applications with equal ease and efficiency.
There are several features which make C a very suitable language for writing system programs. These are a follows:
1. C is machine independent and highly portable language.
2. It is easy to learn as it has only as few as 32 keywords.
3. It has a comprehensive set of operators to tackle business as well as srientific applications with ease.
4. Users create their own functions and add them to the C library to perform a variety of taks.
5. C language allows manipulation of BITS, BYTES, and ADDRESS at hardware level.
6. It has a large library of functions.
7. C operates on the same data types as the computer, so the codes need very little data conversion, if at all. Therefore, codes generated are fast and efficent.
Evolution of C
By the late fifties, there were many computer languages into existence. However, none of them were general purpose. They served better in a particular type of programming application more than others. Thus, while FORTRAN was more suited for engineering programming, COBOL was better for business programming. At this stage people started thinking that instead of learning so many languages for different programming purposes, why not have single computer languages that can be used for programming any type of application.
In 1960, to this end, an international committee was constituted which came out with a language named ALGOL-60. This language could not become popular because it was too general and highly abstract.
In 1963, a modified ALGOL-60 by reducing its generality and abstractness, a new language, CPL (Combined Programming Language) was developed at Cambridge University. CPL too turned out to be very big and difficult to learn.
In 1967, Martin Richards, at Cambridge University, stripped down some of the complexities from CPL retaining useful features and created BCPL (Basic CPL). Very soon it was realized that BCPL was too specific and much too less powerful.
In 1970, Ken Thompson, at AT&T labs, developed a language known by the name B as another simplification to CPL. B, too, like its predecessors, turned out to be very specific and limited in application.
In 1972, Ritchie, at AT&T, took the best of the two BCPL and B, and developed the language C. C was truly a general purpose language, easy to learn and very powerful.
In I960, Bjarne Stroustrup, at Bell labs, took C to its next phase of evolution, by incorporating features of Object Oriented programming/reincarnating C into its new avatar C++. By and large, C remains the mother language for programming even today.
No comments:
Post a Comment