# Programming language theory

**programming language researchProgramming languagestheory of programming languageslanguage researchprogramming languageprogramming language design**

Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and their individual features.wikipedia

169 Related Articles

### Computer science

**computer scientistcomputer sciencescomputer scientists**

Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and their individual features. It falls within the discipline of computer science, both depending on and affecting mathematics, software engineering, linguistics and even cognitive science.

Programming language theory considers approaches to the description of computational processes, while computer programming itself involves the use of programming languages and complex systems.

### Lambda calculus

**beta reductionλ-calculusuntyped lambda calculus**

The lambda calculus, developed by Alonzo Church and Stephen Cole Kleene in the 1930s, is considered by some to be the world's first programming language, even though it was intended to model computation rather than being a means for programmers to describe algorithms to a computer system.

Lambda calculus has played an important role in the development of the theory of programming languages.

### Curry–Howard correspondence

**Curry–Howard isomorphismCurry-Howard correspondencepropositions-as-types**

In programming language theory and proof theory, the Curry–Howard correspondence (also known as the Curry–Howard isomorphism or equivalence, or the proofs-as-programs and propositions- or formulae-as-types interpretation) is the direct relationship between computer programs and mathematical proofs.

### Noam Chomsky

**ChomskyChomsky, NoamChomskyan**

* Noam Chomsky developed the Chomsky hierarchy in the field of linguistics; a discovery which has directly impacted programming language theory and other branches of computer science.

This classification was and remains foundational to formal language theory, and relevant to theoretical computer science, especially programming language theory, compiler construction, and automata theory.

### Programming language

**programming languageslanguagedialect**

Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and their individual features.

### Category theory

**categorycategoricalcategories**

In addition, PLT makes use of many other branches of mathematics, including computability theory, category theory, and set theory.

Category theory has practical applications in programming language theory, for example the usage of monads in functional programming.

### Higher-Order and Symbolic Computation

**LISP and Symbolic Computation**

Notable journals that publish PLT research include the ACM Transactions on Programming Languages and Systems (TOPLAS), Journal of Functional Programming (JFP), Journal of Functional and Logic Programming, and Higher-Order and Symbolic Computation.

It focusses on programming concepts and abstractions and programming language theory.

### John C. Mitchell

**John MitchellMitchell, J.C.Mitchell, John C.**

He has published in the area of programming language theory and computer security.

### Mathematics

**mathematicalmathmathematician**

In addition, PLT makes use of many other branches of mathematics, including computability theory, category theory, and set theory. It falls within the discipline of computer science, both depending on and affecting mathematics, software engineering, linguistics and even cognitive science.

### Software engineering

**software engineersoftware engineerssoftware**

It falls within the discipline of computer science, both depending on and affecting mathematics, software engineering, linguistics and even cognitive science.

### Linguistics

**linguistlinguisticlinguists**

* Noam Chomsky developed the Chomsky hierarchy in the field of linguistics; a discovery which has directly impacted programming language theory and other branches of computer science. It falls within the discipline of computer science, both depending on and affecting mathematics, software engineering, linguistics and even cognitive science.

### Cognitive science

**cognitive scientistcognitive sciencescognitive**

It falls within the discipline of computer science, both depending on and affecting mathematics, software engineering, linguistics and even cognitive science.

### Academic journal

**journaljournalsacademic journals**

It is a well-recognized branch of computer science, and an active research area, with results published in numerous journals dedicated to PLT, as well as in general computer science and engineering publications.

### Alonzo Church

**ChurchChurch, Alonzo**

The lambda calculus, developed by Alonzo Church and Stephen Cole Kleene in the 1930s, is considered by some to be the world's first programming language, even though it was intended to model computation rather than being a means for programmers to describe algorithms to a computer system.

### Stephen Cole Kleene

**Stephen KleeneKleeneStephen C. Kleene**

The lambda calculus, developed by Alonzo Church and Stephen Cole Kleene in the 1930s, is considered by some to be the world's first programming language, even though it was intended to model computation rather than being a means for programmers to describe algorithms to a computer system.

### Model of computation

**models of computationmodelmodels of computing**

### Computer programming

**programmingcodingprogrammable**

### Functional programming

**functionalfunctional programming languagefunctional language**

Many modern functional programming languages have been described as providing a "thin veneer" over the lambda calculus, and many are easily described in terms of it.

### Plankalkül

**Plankalkul**

The first programming language to be invented was Plankalkül, which was designed by Konrad Zuse in the 1940s, but not publicly known until 1972 (and not implemented until 1998).

### Konrad Zuse

**ZuseZuse, KonradZuse KG**

The first programming language to be invented was Plankalkül, which was designed by Konrad Zuse in the 1940s, but not publicly known until 1972 (and not implemented until 1998).

### High-level programming language

**high-levelhigh-level languagehigh level language**

The first widely known and successful high-level programming language was Fortran, developed from 1954 to 1957 by a team of IBM researchers led by John Backus.

### Fortran

**Fortran 77Fortran 90FORTRAN IV**

The first widely known and successful high-level programming language was Fortran, developed from 1954 to 1957 by a team of IBM researchers led by John Backus.

### IBM

**International Business MachinesIBM CorporationInternational Business Machines Corporation**

The first widely known and successful high-level programming language was Fortran, developed from 1954 to 1957 by a team of IBM researchers led by John Backus.

### John Backus

**John W. BackusBackusBackus, John**

### ALGOL 58

**International Algebraic Language1958 Preliminary ReportALGOL**

The success of FORTRAN led to the formation of a committee of scientists to develop a "universal" computer language; the result of their effort was ALGOL 58.