C is a general-purpose programming language which features economy of expressions, a rich set of operators, and modern control flow and data structures. C is not a ‘very high level’ language and is not specialized in any particular area of application. But its absence of restrictions and its generality makes it more convenient and effective for many tasks than supposedly more advanced and powerful languages.
The history of the C programming language is quite fascinating. C was originally designed for and implemented on the UNIX operating system on the DEC PDP-II, by Dennis Ritchie. The C programming language is the result of a development process that started with an older language called BCPL. BCPL was originally developed by Martin Richards, and it influenced another language called B, which was created by Ken Thompson. B language led to the development of C in the 1970s.
How DID it all BEGIN!
In the 1960s Dennis Ritchie was working at AT&T Bell Labs to develop an operating system. During these times, all the systems used assembly language which demanded pages of codes for even simple tasks. For some years, the de facto standard for C was the version provided with the UNIX operating system. In the summer of 1983, a committee was organised to create an ANSI (American National Standards Institute) standard that would specify the C language. The standardization process took six years to accomplish (much longer than anyone reasonably expected).
The ANSI C standard finally adopted in December 1989, with the first copies becoming available in early 1990. The standard was also adopted by the ISO (International Standards Organization), and the resulting standard was typically referred to as ANSI/ISO standard C. In 1995, Amendment 1 to the C standard was selected, which, among other things, added several new library functions. The 1989 standard for C, along with Amendment 1, became a foundation document for Standard C++, defining the C subset of C++. The version of C defined by the 1989 standard is commonly named as C89.
Development of the C language
During the 1990s, a new standard for C was being revealed. It was the 1999 standard for the C language, which is usually referred to as C99. In general, C99 has retained nearly all of the features of C89. The C99 standardization committee focused on two main areas: the addition of several numeric libraries and the development of some special-use, but extremely innovative, new features, such as variable, variable-length arrays and the restrict pointer qualifier. These innovations have once again placed C at the forefront of computer language development.
Evolution of C language
If you use any version of Microsoft Windows, then you have C to thank because all versions of Microsoft Windows are developed mostly in C language. The same goes with MacOS, Linux, Android, iOS and Windows Phone as well. Nearly all the latest operating systems are based on this language. It’s also the most widely used in embedded systems, such as those found in vehicles, smart TVs and countless internet of things (IoT) devices.
Just like most of the world’s greatest inventions in technology and science, C was born out of necessity. Circumstances and problems contributed to the inspiration. However, unlike many programming languages that are now extinct, C has stood the test of time and thrived. Some languages are currently classified as niche languages- for example, Fortran is now mostly used only for engineering purposes and COBOL is struggling to stay relevant. C has not solely stayed relevant however, has also provided inspiration for the development of many other programming languages. Even the latest technology waves like IoT, AI, and automation have failed to dislodge C from its position of prominence. It appears that the C language will thrive with us long into the future as well.