| advertise add site services publishers database health videos | ![]() | about toolbar stats live show health store more stuff JOIN/LOGIN |
Language and Auditory Processing Program (LAPP) - Speech-Language... childrenshospital.org | integrativenutrition.com | The Program | Educational Theory integrativenutrition.com |
Programming language theory (commonly known as 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 and linguistics. It is a well-recognized branch of computer science, and as of 2009[update], an active research area, with results published in numerous journals dedicated to PLT, as well as in general computer science and engineering publications. Most undergraduate computer science programs require coursework in the topic.
[edit] HistoryIn some ways, the history of programming language theory predates even the development of programming languages themselves. 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. Many modern functional programming languages have been described as providing a "thin veneer" over the lambda calculus [1], and many are easily described in terms of it. The first programming language to be proposed was Plankalkül, which was designed by Konrad Zuse in the 1940s, but not publicly known until 1972 (and not implemented until 1998). The first widely known and successful programming language was Fortran, developed from 1954 to 1957 by a team of IBM researchers led by John Backus. 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. Separately, John McCarthy of MIT developed the Lisp programming language (based on the lambda calculus), the first language with origins in academia to be successful. With the success of these initial efforts, programming languages became an active topic of research in the 1960s and beyond. Some other key events in the history of programming language theory since then:
[edit]There are several fields of study which either lie within programming language theory, or which have a profound influence on it; many of these have considerable overlap.
In addition, PLT makes use of many other branches of mathematics, including computability theory, category theory, and set theory. [edit] PLT-specific journals, publications, and conferencesJournals which publish original research in programming language theory include:
PLT articles of significant impact or of more general interest may appear in more generalist journals like Journal of the ACM, Information and Computation, or Theoretical Computer Science. Also see the list of publications in computer science. Like in many fields of Computer Science, conferences play an important, sometimes leading, role. Perhaps the best-known conference in PLT is the Symposium on Principles of Programming Languages (POPL). [edit] The Lambda SymbolAn unofficial symbol of the field of programming language theory is the lowercase Greek letter λ (lambda). This usage derives from the lambda calculus, a computational model widely used by programming language researchers. Many texts and papers on programming and programming languages utilize the lambda in some fashion. It graces the cover of the classic text Structure and Interpretation of Computer Programs, and the title of many of the so-called Lambda Papers, written by Gerald Jay Sussman and Guy Steele, the developers of the Scheme programming language. A popular website on programming language theory is called Lambda the Ultimate, in honor of Sussman and Steele's work. [edit] See also[edit] External links
|
| ↑ top of page ↑ | about thumbshots |