Programming language generations reference different eras of programming history. How it is classified indicates programming power is increasing. A generation language may refer to any of the following; 1st generation languages or 1GL which are low-level machine languages. The 2nd languages are also low level assembly languages and are sometimes used in kernels and hardware drives.
The 3rd generation languages are high level languages like C++, Java, C, and Visual Basic. They are considered to be procedure-oriented because the program instructions consists of procedures that tell a computer what to do. The 4th generation languages are those that consist of statements in a human language and are commonly used in database programming.