Share
VIDEOS 1 TO 50
Philip Wadler and Erik Meijer: On Programming Language Theory and Practice
Philip Wadler and Erik Meijer: On Programming Language Theory and Practice
Published: 2010/12/24
Channel: schonfinkeled
Programming language theory
Programming language theory
Published: 2016/01/22
Channel: WikiAudio
The First Programming Languages: Crash Course Computer Science #11
The First Programming Languages: Crash Course Computer Science #11
Published: 2017/05/10
Channel: CrashCourse
Understand Programming Languages
Understand Programming Languages
Published: 2016/01/16
Channel: Dave Xiang
Introduction to programming and programming languages: C Programming Tutorial 01
Introduction to programming and programming languages: C Programming Tutorial 01
Published: 2013/08/14
Channel: mycodeschool
Douglas Crockford: The JavaScript Programming Language
Douglas Crockford: The JavaScript Programming Language
Published: 2011/08/26
Channel: YUI Library
Introduction to programming language theory
Introduction to programming language theory
Published: 2010/07/25
Channel: EW926
Theory of Computation: Programming Language L (Part 01)
Theory of Computation: Programming Language L (Part 01)
Published: 2011/09/19
Channel: vkedco
Bjarne Stroustrup: The 5 Programming Languages You Need to Know
Bjarne Stroustrup: The 5 Programming Languages You Need to Know
Published: 2011/06/13
Channel: Big Think
Which Programming Language to Learn?
Which Programming Language to Learn?
Published: 2017/03/02
Channel: Telusko Learnings
Larry Wall: 5 Programming Languages Everyone Should Know
Larry Wall: 5 Programming Languages Everyone Should Know
Published: 2011/06/13
Channel: Big Think
C Programming Tutorial | Learn C programming | C language
C Programming Tutorial | Learn C programming | C language
Published: 2015/11/23
Channel: ProgrammingKnowledge
A glimpse of the Curry-Howard correspondence in logic and programming language theory
A glimpse of the Curry-Howard correspondence in logic and programming language theory
Published: 2018/02/18
Channel: Nikolaj-K
Programming : languages tutorial (theory) 1
Programming : languages tutorial (theory) 1
Published: 2016/06/19
Channel: Code Ressources
"A History of Programming Languages for 2 Voices" by David Nolen and Michael Bernstein
"A History of Programming Languages for 2 Voices" by David Nolen and Michael Bernstein
Published: 2015/09/27
Channel: Strange Loop
What Is a Programming Language? / Intro to JavaScript ES6 Programming, lesson 2
What Is a Programming Language? / Intro to JavaScript ES6 Programming, lesson 2
Published: 2016/12/02
Channel: Hexlet
OCR GCSE Computing: Programming Languages - Topic 20
OCR GCSE Computing: Programming Languages - Topic 20
Published: 2015/02/20
Channel: Computer Science Tutor
1. What is Computation?
1. What is Computation?
Published: 2017/02/15
Channel: MIT OpenCourseWare
Object-Oriented Programming
Object-Oriented Programming
Published: 2012/11/03
Channel: Brian Will
The Impact of Programming Language Theory on Computer Security
The Impact of Programming Language Theory on Computer Security
Published: 2016/11/29
Channel: Shams Usa
Context Free Languages - Programming Languages
Context Free Languages - Programming Languages
Published: 2012/06/03
Channel: Udacity
Lec 1 | MIT 6.00 Introduction to Computer Science and Programming, Fall 2008
Lec 1 | MIT 6.00 Introduction to Computer Science and Programming, Fall 2008
Published: 2009/08/20
Channel: MIT OpenCourseWare
Intro to Theory of Programming
Intro to Theory of Programming
Published: 2015/03/17
Channel: Theory of Programming
Advanced Topics in Programming Languages Series:...
Advanced Topics in Programming Languages Series:...
Published: 2007/10/09
Channel: GoogleTechTalks
8.1: What is Object-Oriented Programming (OOP)? - Processing Tutorial
8.1: What is Object-Oriented Programming (OOP)? - Processing Tutorial
Published: 2015/07/24
Channel: The Coding Train
C++ Programming
C++ Programming
Published: 2014/11/20
Channel: Derek Banas
Masterminds of Programming Conversations with the Creators of Major Programming Languages Theory in
Masterminds of Programming Conversations with the Creators of Major Programming Languages Theory in
Published: 2016/12/29
Channel: Rachel Khull
Syntactic Structures - Programming Languages
Syntactic Structures - Programming Languages
Published: 2012/06/03
Channel: Udacity
Masterminds of Programming Conversations with the Creators of Major Programming Languages Theory in
Masterminds of Programming Conversations with the Creators of Major Programming Languages Theory in
Published: 2016/12/23
Channel: Zara Creswick
What is the C programming language? | lynda.com overview
What is the C programming language? | lynda.com overview
Published: 2013/03/13
Channel: LinkedIn Learning Solutions
Python Programming
Python Programming
Published: 2014/11/10
Channel: Derek Banas
Go Programming
Go Programming
Published: 2015/02/16
Channel: Derek Banas
Socio-PLT: Quantitative and Social Theories for Programming Language Adoption
Socio-PLT: Quantitative and Social Theories for Programming Language Adoption
Published: 2012/11/21
Channel: GoogleTechTalks
Denotational Semantics The Scott Strachey Approach to Programming Language Theory Computer Science S
Denotational Semantics The Scott Strachey Approach to Programming Language Theory Computer Science S
Published: 2015/12/01
Channel: kyla
Pointers in C Theory
Pointers in C Theory
Published: 2016/03/24
Channel: Telusko Learnings
How to Learn a New Programming Language
How to Learn a New Programming Language
Published: 2016/05/04
Channel: edutechional
Introduction about Functions in C - C Programming language
Introduction about Functions in C - C Programming language
Published: 2014/04/24
Channel: BestDotNetTraining
Ideas about a new programming language for games.
Ideas about a new programming language for games.
Published: 2014/09/19
Channel: Jonathan Blow
Programming Theory - Procedural Programming
Programming Theory - Procedural Programming
Published: 2012/08/29
Channel: Chris Lewis
Basic Structure of C Program (HINDI)
Basic Structure of C Program (HINDI)
Published: 2014/12/12
Channel: easytuts4you
Category Theory for the Working Hacker by Philip Wadler
Category Theory for the Working Hacker by Philip Wadler
Published: 2016/11/11
Channel: Lambda World
TYPES OF GRAMMAR- Type 0, Type 1, Type 2, Type 3  (CHOMSKY HIERARCHY)|| THEORY OF COMPUTATION
TYPES OF GRAMMAR- Type 0, Type 1, Type 2, Type 3 (CHOMSKY HIERARCHY)|| THEORY OF COMPUTATION
Published: 2017/02/26
Channel: Chanchal Agarwal
Category Theory, The essence of interface-based design - Erik Meijer
Category Theory, The essence of interface-based design - Erik Meijer
Published: 2015/09/10
Channel: FooCafe
John Myles White on Fundamental Concepts in Programming Languages
John Myles White on Fundamental Concepts in Programming Languages
Published: 2015/03/24
Channel: PapersWeLove
What happened to distributed programming languages? by Heather Miller
What happened to distributed programming languages? by Heather Miller
Published: 2017/10/11
Channel: PapersWeLove
Theory of Computation: Programming Language L (Part 02)
Theory of Computation: Programming Language L (Part 02)
Published: 2011/09/26
Channel: vkedco
IOHK | Prof. Philip Wadler, area leader, programming languages.
IOHK | Prof. Philip Wadler, area leader, programming languages.
Published: 2017/12/24
Channel: IOHK
A Scientific Theory of Mindful Design - Hypotheses 4 & Brain Programming Language Exploration
A Scientific Theory of Mindful Design - Hypotheses 4 & Brain Programming Language Exploration
Published: 2016/12/19
Channel: Crawford Comeaux
Programming Theory - Object Orientated Programming
Programming Theory - Object Orientated Programming
Published: 2012/08/29
Channel: Chris Lewis
Strings in C (HINDI/URDU)
Strings in C (HINDI/URDU)
Published: 2014/04/23
Channel: easytuts4you
NEXT
GO TO RESULTS [51 .. 100]

WIKIPEDIA ARTICLE

From Wikipedia, the free encyclopedia
Jump to: navigation, search
The lowercase Greek letter λ (lambda) is an unofficial symbol of the field of programming language theory. This usage derives from the lambda calculus, a model of computation introduced by Alonzo Church in the 1930s and widely used by programming language researchers. It graces the cover of the classic text Structure and Interpretation of Computer Programs, and the title of the so-called Lambda Papers, written by Gerald Jay Sussman and Guy Steele, the developers of the Scheme programming language.

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

History[edit]

In 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 invented 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 high-level 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:

1950s[edit]

1960s[edit]

1970s[edit]

1980s[edit]

1990s[edit]

Sub-disciplines and related fields[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.

Formal semantics[edit]

Formal semantics is the formal specification of the behaviour of computer programs and programming languages. Three common approaches to describe the semantics or "meaning" of a computer program are denotational semantics, operational semantics and axiomatic semantics.

Type theory[edit]

Type theory is the study of type systems; which are "a tractable syntactic method for proving the absence of certain program behaviors by classifying phrases according to the kinds of values they compute".[3] Many programming languages are distinguished by the characteristics of their type systems.

Program analysis and transformation[edit]

Program analysis is the general problem of examining a program and determining key characteristics (such as the absence of classes of program errors). Program transformation is the process of transforming a program in one form (language) to another form.

Comparative programming language analysis[edit]

Comparative programming language analysis seeks to classify programming languages into different types based on their characteristics; broad categories of programming languages are often known as programming paradigms.

Generic and metaprogramming[edit]

Metaprogramming is the generation of higher-order programs which, when executed, produce programs (possibly in a different language, or in a subset of the original language) as a result.

Domain-specific languages[edit]

Domain-specific languages are languages constructed to efficiently solve problems in a particular problem domain.

Compiler construction[edit]

Compiler theory is the theory of writing compilers (or more generally, translators); programs which translate a program written in one language into another form. The actions of a compiler are traditionally broken up into syntax analysis (scanning and parsing), semantic analysis (determining what a program should do), optimization (improving the performance of a program as indicated by some metric; typically execution speed) and code generation (generation and output of an equivalent program in some target language; often the instruction set of a CPU).

Run-time systems[edit]

Runtime systems refers to the development of programming language runtime environments and their components, including virtual machines, garbage collection, and foreign function interfaces.

Journals, publications, and conferences[edit]

Conferences are the primary venue for presenting research in programming languages. The most well known conferences include the Symposium on Principles of Programming Languages (POPL), Conference on Programming Language Design and Implementation (PLDI), the International Conference on Functional Programming (ICFP), and the International Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA).

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.

See also[edit]

References[edit]

  1. ^ http://www.c2.com/cgi/wiki?ModelsOfComputation
  2. ^ C. Böhm and W. Gross (1996). Introduction to the CUCH. In E. R. Caianiello (ed.), Automata Theory, p. 35-64/
  3. ^ Benjamin C. Pierce. 2002. Types and Programming Languages. MIT Press, Cambridge, MA, USA.

Further reading[edit]

External links[edit]

Disclaimer

None of the audio/visual content is hosted on this site. All media is embedded from other sites such as GoogleVideo, Wikipedia, YouTube etc. Therefore, this site has no control over the copyright issues of the streaming media.

All issues concerning copyright violations should be aimed at the sites hosting the material. This site does not host any of the streaming media and the owner has not uploaded any of the material to the video hosting servers. Anyone can find the same content on Google Video or YouTube by themselves.

The owner of this site cannot know which documentaries are in public domain, which has been uploaded to e.g. YouTube by the owner and which has been uploaded without permission. The copyright owner must contact the source if he wants his material off the Internet completely.

Powered by YouTube
Wikipedia content is licensed under the GFDL and (CC) license