Second-generation programming language

Last updated

The label of second-generation programming language (2GL) is a generational way to categorize assembly languages. [1] [2] [3] They belong to the low-level programming languages.

The term was coined to provide a distinction from higher level machine independent third-generation programming languages (3GLs) (such as COBOL, C, or Java) and earlier first-generation programming languages (machine code) [2] [4]

Second-generation programming language

Second-generation programming languages have the following properties:

Second-generation languages are sometimes used for parts of kernels or device drivers, and are sometimes used in video games, graphics programs, and other intensive programs. [1]

In modern programs, second generation assembly languages are rarely used. [5] Programming in second generation languages may yield speed benefits, but several disadvantages have led to its decline:

The vast majority of programs are written in a third-generation programming language or a fourth-generation programming language. Assembly's main advantage, speed, has degraded by the fact that well written C code can often be as fast or even faster than handwritten assembly. [2] [6]

Second generation languages are perhaps most significant in their place in computing history. For a long time, Second generation assembly languages were the only good option for development for many machines, such as the NES or the Commodore 64. [7] [8] Second generation languages represented a massive step away from the tradition of programmers conforming to the needs of a machine, and the first step towards the machine accommodating for the programmer, a phenomenon that would be repeated in all subsequent programming language generations. [2] [3]

References

  1. 1 2 "Computer Hope, Generation languages"
  2. 1 2 3 4 5 6 7 Brookshear, J. Glenn (2012). Computer science : an overview (11th ed.). Addison-Wesley. pp. 240–241. ISBN   978-0-13-256903-3.
  3. 1 2 3 4 Vass, Péter. "Programming Language generations and Programming Paradigms" (PDF). Archived from the original (PDF) on 2020-01-29. Retrieved 2019-06-11.
  4. 1 2 "What Are Programming Language Generations?". wiseGEEK. Retrieved 2019-06-11.
  5. "Top Computer Languages 2019 - StatisticsTimes.com". statisticstimes.com. Archived from the original on 2019-06-12. Retrieved 2019-06-11.
  6. Walls, Colin. "Why C is faster than assembly". Mentor, a Sieman's Business. Mentor Inc. Archived from the original on 2020-01-29. Retrieved 11 June 2019.
  7. Commodore corporation. "C64 programmer's reference" (PDF). Commodore corporation. Retrieved 11 June 2019.
  8. Wikibooks contributors. "NES assembly". Wikibooks: NES Assembly. Retrieved 11 June 2019.{{cite web}}: |author1= has generic name (help)