Lets talks about C language
The
C language shook the computer world. Its impact should not be underestimated,
because it fundamentally changed the way programming was approached and thought
about. The creation of C language was a direct result of the need for a structured,
efficient, high-level language that could replace assembly code when creating
systems programs. As you probably know, when a computer language is designed,
trade-offs are often made, such as the following:
Related Topics:
•
Ease-of-use versus power
•
Safety versus efficiency
• Rigidity versus extensibility
Prior
to C language programmers usually had to choose between languages that optimized one
set of traits or the other. For example, although FORTRAN could be used to
write fairly efficient programs for scientific applications, it was not very
good for system code. And while BASIC was easy to learn, it wasn’t very
powerful, and its lack of structure made its usefulness questionable for large
programs. Assembly language can be used to produce highly efficient programs,
but it is not easy to learn or use effectively. 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, they relied upon the GOTO as a primary means of
program control.
As a result, programs written
using these languages tended to produce “spaghetti code”a mass of tangled
jumps and conditional branches that make a program virtually impossible to
understand. While languages like Pascal are structured, they were not designed
for efficiency, and failed to include certain features necessary to make them
applicable to a wide range of programs. (Specifically, given the standard
dialects of Pascal available at the time, it was not practical to consider
using Pascal for systems-level code.) So, just prior to the invention of C language no
one language had reconciled the conflicting attributes that had dogged earlier
efforts. Yet the need for such a language was pressing. By the early 1970s, the
computer revolution was beginning to take hold, and the 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 a better
computer language. But, and perhaps most importantly, a secondary force was
beginning to be felt. Computer hardware was finally becoming common enough that
a critical mass was being reached. No longer were computers kept behind locked
doors.
For the first time,
programmers were gaining virtually unlimited access to their machines. This
allowed the freedom to experiment. It also allowed programmers to begin to
create their own tools. On the eve of C’s creation, the stage was set for a
quantum leap forward in computer languages. Invented and first implemented by
Dennis Ritchie on a DEC PDP-11 running the UNIX operating system, C was the
result of a development process that started with an older language called BCPL,
developed by Martin Richards. BCPL influenced a language called B, invented by
Ken Thompson, which led to the development of C in the 1970s. For many years,
the de facto standard for C was the one supplied with the UNIX operating system
and described in The C Programming Language by Brian Kernighan and Dennis
Ritchie (Prentice-Hall, 1978). C was formally standardized in December 1989,
when the American National Standards Institute (ANSI) standard for C was
adopted. 4 Part I: The Java Language Chapter 1: The History and Evolution of
Java
The creation of C is considered by
many to have marked the beginning of the modern age of computer languages. It
successfully synthesized the conflicting attributes 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, nearly
intangible aspect: it was a programmer’s language. Prior to the invention of C,
computer languages were generally designed either as academic exercises or by
bureaucratic committees. 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 who actually used the language. The result was a
language that programmers liked to use. Indeed, C language quickly attracted many
followers who had a near-religious zeal for it. As such, 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 inherited this legacy
No comments:
Post a Comment
We are happy for leaving comments,we will don't let you bite stay with us