Programming language theory is the part of computer science dealing with the analysis, design and implementation of computer programming languages. It does this by taking their individual features and how they compare to each other to create different classes of languages. It is a discipline of computer science, but relies heavily on mathematics and linguistics theory as well. The field has also made heavy contribution to these topics in return as well.
Programming language theory was started by Alonzo Church when he invited Lambda Calculus, which is considered the precursor to true programming languages.
Alonzo Church teaching at Princeton [Photo credit: Princeton University, Institution of Mathematics ]
Although Lambda Calculus is not a true programming language, it did model computation. When FORTRAN was developed, it became the first programming language to be described fully by the theory. Nowadays, programming language theory categorizes languages based off many factors into different paradigms such as:
- Object Oriented Programming,
- Imperative Programming,
- Functional Programming, and many others.