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
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.

Computer programming

programmingcodingprogrammable
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.

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
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.

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.