Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

The Birth of Modern Programming: C

Name: Anonymous 2018-01-02 21:12

The C language shook the computer world. Its impact should not be underestimated,because it fundamentally changed the way programming was approached and thoughtabout. The creation of C was a direct result of the need for a structured, efficient, highlevellanguage that could replace assembly code when creating systems programs. Asyou probably know, when a computer language is designed, trade-offs are often made,such as the following:

■ Ease-of-use versus power■ Safety versus efficiency■ Rigidity versus extensibility

Prior to C, programmers usually had to choose between languages that optimizedone set of traits or the other. For example, although FORTRAN could be used to writefairly efficient programs for scientific applications, it was not very good for systemscode. And while BASIC was easy to learn, it wasn’t very powerful, and its lack ofstructure made its usefulness questionable for large programs. Assembly languagecan be used to produce highly efficient programs, but it is not easy to learn or useeffectively. Further, debugging assembly code can be quite difficult.Another compounding problem was that early computer languages such as BASIC,COBOL, and FORTRAN were not designed around structured principles. Instead, theyrelied upon the GOTO as a primary means of program control. As a result, programswritten using these languages tended to produce “spaghetti code”—a mass of tangledjumps and conditional branches that make a program virtually impossible tounderstand. While languages like Pascal are structured, they were not designed forefficiency, and failed to include certain features necessary to make them applicable toa wide range of programs. (Specifically, given the standard dialects of Pascal availableat the time, it was not practical to consider using Pascal for systems-level code.)So, just prior to the invention of C, no one language had reconciled the conflictingattributes that had dogged earlier efforts. Yet the need for such a language waspressing. By the early 1970s, the computer revolution was beginning to take hold, andthe demand for software was rapidly outpacing programmers’ ability to produce it.A great deal of effort was being expended in academic circles in an attempt to create abetter computer language. But, and perhaps most importantly, a secondary force wasbeginning to be felt. Computer hardware was finally becoming common enough that acritical mass was being reached. No longer were computers kept behind locked doors.For the first time, programmers were gaining virtually unlimited access to theirmachines. This allowed the freedom to experiment. It also allowed programmers tobegin to create their own tools. On the eve of C’s creation, the stage was set for aquantum leap forward in computer languages.
Invented and first implemented by Dennis Ritchie on a DEC PDP-11 running theUNIX operating system, C was the result of a development process that started withan older language called BCPL, developed by Martin Richards. BCPL influenced alanguage called B, invented by Ken Thompson, which led to the development of Cin the 1970s. For many years, the de facto standard for C was the one supplied withthe UNIX operating system and described in The C Programming Language by BrianKernighan and Dennis Ritchie (Prentice-Hall, 1978). C was formally standardized inDecember 1989, when the American National Standards Institute (ANSI) standard forC was adopted.
The creation of C is considered by many to have marked the beginning of themodern age of computer languages. It successfully synthesized the conflictingattributes that had so troubled earlier languages. The result was a powerful, efficient,structured language that was relatively easy to learn. It also included one other, nearlyintangible aspect: it was a programmer’s language. Prior to the invention of C, computerlanguages were generally designed either as academic exercises or by bureaucraticcommittees. C is different. It was designed, implemented, and developed by real,
working programmers, reflecting the way that they approached the job of programming.Its features were honed, tested, thought about, and rethought by the people whoactually used the language. The result was a language that programmers liked to use.Indeed, C quickly attracted many followers who had a near-religious zeal for it. Assuch, it found wide and rapid acceptance in the programmer community. In short,C is a language designed by and for programmers. As you will see, Java has inheritedthis legacy.

Name: Anonymous 2018-01-02 22:51


Don't change these.
Name: Email:
Entire Thread Thread List