Programming Langauges Theory
Created: Jun 16, 2018 by Pradeep Gowda. Updated: Jun 16, 2018
Notes on theory of programming languages.
Concepts See:
- Formal specifictions of syntax
- Static Program Analysis
- Declarations and bindings
- Allocations
- Data types
- Control structures
- Control and data flow
- Implementation and execution of programs
- Program verification
- Program Synthesis (See A Program Synthesis Primer)
- Paradigms > - Imparative programming > - Functional programming > - Logic programming > - Object oriented programming
Metalists
- A path to Programming Language Theory enlightenment
- Colin Stebbins Gordon’s Electronic References – “… loosely-categorized collection of links to PL (and related) texts and references that are available online because they are either openly shared publications (like PLAI, SF, or the HoTT book), first editions of updated books released to the world (like Programming in Scala or Semantics with Applications), thorough but out of print references (like TTFP), or publicly available drafts (like HtDC and Practical Foundations for Programming Languages). Most of these I’ve only used for brief personal reference, and have not read in depth. The exceptions, those books I’ve spent considerable time with and highly recommend, are marked with asterisks.”
Books
- Programming Language Foundations in Agda “This book is an introduction to programming language theory, written in Agda. The authors are Wen Kokke and Philip Wadler.” [Aug 2018]
- Ken Slonnenger’s book (free) Syntax and Semantics of Programming Languages
- Implementing Programming Langauges [pdf] by Aarne Ranta, 2012.
Reading
- PLT metalist by Steven Shaw
- Table of Contents | Programming Language Theory in Agda
- Reading for graduate students by Matt Might
- Steven Shaw’s “A path to enlightenment in Programming Language Theory” page on github.
- PL for SE, Part 1: “Programming Languages” | taliasplse
Papers
Courseware
- Theory of Programming languages Spring 2014 at Wellesley using OCaml.
- Program analysis and understanding Fall 2011 at UMD.
- Programming paradigms and Formal Semantics
Lectures
- https://www.dropbox.com/s/joaq7m9v75blrw5/pl-notation-lambdaconf-2018.pdf?dl=1
- Jeremy G. Siek - Crash Course on Notation in Programming Language Theory (Part 2) - λC 2018 - YouTube
- Jeremy G. Siek - Crash Course on Notation in Programming Language Theory (Part 1) - λC 2018 - YouTube