Programming is a way of sending instructions to the computer. To create these instructions, programmers use programming languages to create source code, and the source code is then converted into machine (or object) code, the only language that a computer understands. People, however, have difficulty understanding machine code. As a result, first assembly languages and then higher-level languages were developed. Programming languages require that information be provided in a certain order and structure, that symbols be used, and sometimes even that punctuation
be used. These rules are called the syntax of the programming language, and they vary a great deal from one language to another.
Categories of Languages.
Based on evolutionary history, programming languages fall into one of the following three broad categories:
Machine Languages. Machine languages consist of the 0s and 1s of the binary number system and are defined by hardware design. A computer understands only its machine language – the commands in its instruction set that instruct the computer to perform elementary operations such as loading, storing, adding, and subtracting.
Assembly Languages. These languages were developed by using Englishlike mnemonics. Programmers worked in text editors to create their source files.
To convert the source files into object code, researchers created translator programs called assemblers. Assembly languages are still much easier to use than machine language.
Higher-Level Languages. These languages use syntax that is close to human language, they use familiar words instead of communicating in digits. To express computer operations, they use operators, such as the plus or minus sign, that are the familiar components of mathematics. As a result, reading, writing, and understanding computer programs is easier.
Machine languages are considered first-generation languages, and assembly languages are considered second-generation languages. The higher-level languages began with the third generation. Third-generation languages (3GLs) can support structured programming, use true English-like phrasing, make it easier for programmers to share in the development of programs. Besides, they are portable, that is, you can put the source code and a compiler or interpreter on practically any computer and create working object code. Some of the third-generation languages
include the following: FORTRAN, COBOL, BASIC, Pascal, C, C++, Java, ActiveX.
Fourth-generation languages (4GLs) use either a text environment, much like a 3GL, or a visual environment. In the text environment, the programmer uses English-like words when generating source code. In a 4GL visual environment, the programmer uses a toolbar to drag and drop various items like buttons, labels, and text boxes to create a visual definition of an application. Many 4GLs are databaseaware;
that is, you can build programs with a 4GL that work as front end (an interface that hides much of the program from the user) to databases. Programmers can also use 4GLs to develop prototypes of an application quickly. Some of the fourthgeneration languages are Visual Basic and Visual Age.
A 5GL would use artificial intelligence to create software based on your description of what the software should do.