A vocabulary and set of grammatical rules for instructing a
computer to perform specific tasks. The term
programming language usually refers to
high-level languages, such as
BASIC,
C,
C++,
COBOL,
FORTRAN,
Ada, and
Pascal. Each
language has a unique set of
keywords (words that it understands) and a special
syntax for organizing
program instructions.
High-level programming languages, while simple compared to human
languages, are more complex than the languages the computer actually
understands, called
machine languages. Each different type of
CPUhas its own unique machine language.
Lying between machine languages and high-level languages are languages called
assembly languages. Assembly languages are similar to machine languages, but they are much easier to program in because they allow a
programmer to substitute
namesfor numbers. Machine languages consist of numbers only.
Lying above high-level languages are languages called
fourth-generation languages (usually abbreviated
4GL). 4GLs are far removed from machine languages and represent the class of computer languages closest to human languages.
Regardless of what language you use, you eventually need to
convertyour program into machine language so that the computer can understand it. There are two ways to do this:
1)
compile the program
2)
interpret the program
Recommended Reading: See compile and interpreter for more information about these two methods.
The question of which language is best is one that consumes a lot of
time and energy among computer professionals. Every language has its
strengths and weaknesses. For example, FORTRAN is a particularly good
language for processing numerical
data,
but it does not lend itself very well to organizing large programs.
Pascal is very good for writing well-structured and readable programs,
but it is not as flexible as the C programming language. C++ embodies
powerful
object-oriented features, but it is complex and difficult to learn.
The choice of which language to use depends on the type of computer the program is to
run on, what sort of program it is, and the expertise of the programmer.
link: