<Tr> <Td> </Td> <Td> This section needs expansion . You can help by adding to it . (June 2015) </Td> </Tr> <P> The terms "first generation" and "second generation" programming language were not used prior to the coining of the term "third - generation"; none of these three terms are mentioned in early compendiums of programming languages . The introduction of a third generation of computer technology coincided with the creation of a new generation of programming languages . The marketing for this generational shift in machines correlated with several important changes in what were called high level programming languages, discussed below, giving technical content to the second / third - generation distinction among high level programming languages as well, and reflexively renaming machine code languages as first generation, and assembly languages as second generation . </P> <P> Initially, all programming languages at a higher level than assembly were termed "third - generation", but later on, the term "fourth - generation" was introduced to try to differentiate the (then) new declarative languages (such as Prolog and domain - specific languages) which claimed to operate at an even higher level, and in a domain even closer to the user (e.g. at a natural language level) than the original, imperative high level languages such as Pascal, C, ALGOL, Fortran, BASIC, etc . </P> <P> "Generational" classification of high level languages (3rd generation and later) was never fully precise and was later perhaps abandoned, with more precise classifications gaining common usage, such as object - oriented, declarative and functional . C gave rise to C++ and later to Java and C#, Lisp to CLOS, Ada to Ada 2012, and even COBOL to COBOL2002, and new languages have emerged in that "generation" as well . </P>

Which generation of languages allows for the use of words and commands